Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .assets-revision
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,4 @@
# is a git revision (branch name like `main`, a tag, or a specific commit
# sha). Override at runtime with the ASSETS_REVISION env var.
repo: ChilleD/WebHarbor
revision: 54882a6a66a17a3e43455057e7c9e0d103cd8b81
revision: refs/pr/42
4 changes: 2 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# WebHarbor — slim, self-contained image.
# 16 Flask mirror sites + control plane on :8101.
# 17 Flask mirror sites + control plane on :8101.

FROM python:3.12-slim-bookworm

Expand Down Expand Up @@ -33,6 +33,6 @@ COPY control_server.py /opt/control_server.py
COPY site_runner.py /opt/site_runner.py
RUN chmod +x /opt/websyn_start.sh

EXPOSE 8101 40000-40015
EXPOSE 8101 40000-40016

CMD ["/opt/websyn_start.sh"]
2 changes: 1 addition & 1 deletion control_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
'allrecipes', 'amazon', 'apple', 'arxiv', 'bbc_news', 'booking',
'github', 'google_flights', 'google_map', 'google_search',
'huggingface', 'wolfram_alpha', 'cambridge_dictionary',
'coursera', 'espn', 'merriam_webster',
'coursera', 'espn', 'merriam_webster', 'webmd',
]
BASE_PORT = 40000
WEBSYN_DIR = '/opt/WebSyn'
Expand Down
3 changes: 3 additions & 0 deletions sites/webmd/_health.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
"""Per-site health probe (optional, called by control_server)."""
def health():
return {"ok": True, "site": "webmd"}
305 changes: 305 additions & 0 deletions sites/webmd/_seed_articles_a.py

Large diffs are not rendered by default.

228 changes: 228 additions & 0 deletions sites/webmd/_seed_articles_b.py

Large diffs are not rendered by default.

247 changes: 247 additions & 0 deletions sites/webmd/_seed_articles_c.py

Large diffs are not rendered by default.

78 changes: 78 additions & 0 deletions sites/webmd/_seed_authors.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
"""Author and medical-reviewer personas.

All 22 people below are FICTIONAL, invented for this offline mirror. Any
resemblance to real writers or clinicians is coincidental; no bios were
copied from webmd.com or anywhere else.
"""

AUTHORS = [
# --- Writers (role: writer) ---
{"name": "Rachel Whitmore", "slug": "rachel-whitmore", "role": "writer",
"credentials": "MS, Health Journalism",
"bio": "Rachel Whitmore is a senior health writer covering chronic disease, cardiology, and preventive care. Before turning to journalism she spent four years coordinating clinical trials at a Midwestern academic medical center, an experience that shapes her evidence-first approach to consumer health writing."},
{"name": "Marcus Delgado", "slug": "marcus-delgado", "role": "writer",
"credentials": "BA, Science Communication",
"bio": "Marcus Delgado writes about infectious disease, vaccines, and public health. His explainers on seasonal illness have been recognized by two regional press associations, and he is a stickler for translating study statistics into plain language readers can act on."},
{"name": "Priya Raman", "slug": "priya-raman", "role": "writer",
"credentials": "MPH",
"bio": "Priya Raman covers nutrition, metabolic health, and diabetes. She holds a master of public health with a nutrition concentration and previously developed community diabetes-prevention curricula, which is why her articles always end with something practical to try this week."},
{"name": "Tom Okafor", "slug": "tom-okafor", "role": "writer",
"credentials": "BS, Kinesiology",
"bio": "Tom Okafor is a fitness and musculoskeletal health writer. A former collegiate middle-distance runner and certified strength coach, he specializes in translating sports-medicine research into routines that work for people with desk jobs and cranky knees."},
{"name": "Elena Vasquez", "slug": "elena-vasquez", "role": "writer",
"credentials": "MA, Psychology",
"bio": "Elena Vasquez writes about mental health, sleep, and behavior change. She spent six years as a crisis-line program manager before moving to health media, and she brings that frontline perspective to coverage of anxiety, depression, and stress."},
{"name": "David Lindqvist", "slug": "david-lindqvist", "role": "writer",
"credentials": "BSN, RN",
"bio": "David Lindqvist is a registered nurse turned medical writer who covers medication safety, drug interactions, and hospital care. Twelve years on a cardiac step-down unit taught him exactly which medication questions patients ask at discharge — and he writes to answer them."},
{"name": "Hannah Bell-Curtis", "slug": "hannah-bell-curtis", "role": "writer",
"credentials": "BA, Journalism",
"bio": "Hannah Bell-Curtis covers women's health, pregnancy, and family medicine topics. A mother of three, she pairs rigorous sourcing with a practical sensibility about what advice actually survives contact with a busy household."},
{"name": "James Park", "slug": "james-park", "role": "writer",
"credentials": "MS, Biomedical Sciences",
"bio": "James Park reports on new research, drug approvals, and medical technology. He reads the primary studies so you don't have to, and he is known in the newsroom for flagging overhyped findings before they make headlines."},
{"name": "Sofia Andersson", "slug": "sofia-andersson", "role": "writer",
"credentials": "RD, LDN",
"bio": "Sofia Andersson is a registered dietitian who writes about weight management, gut health, and evidence-based eating patterns. She has counseled more than a thousand patients in outpatient practice and remains allergic to fad-diet promises."},
{"name": "Curtis Boone", "slug": "curtis-boone", "role": "writer",
"credentials": "BA, English",
"bio": "Curtis Boone covers men's health, urology, and healthy aging. His long-running column on navigating the healthcare system as a patient grew out of managing his own father's care, and it shows in his unusually concrete service journalism."},
{"name": "Amara Osei", "slug": "amara-osei", "role": "writer",
"credentials": "MPH, CHES",
"bio": "Amara Osei is a certified health education specialist writing about skin conditions, allergies, and everyday preventive care. She previously ran patient-education programs for a dermatology group practice."},
{"name": "Nick Ferrante", "slug": "nick-ferrante", "role": "writer",
"credentials": "BS, Pharmacology",
"bio": "Nick Ferrante writes the drugs and supplements beat. With an undergraduate degree in pharmacology and five years as a pharmacy technician, he specializes in how medicines actually behave in the body — and what the label warnings really mean."},
{"name": "Leah Sandoval", "slug": "leah-sandoval", "role": "writer",
"credentials": "MS, Gerontology",
"bio": "Leah Sandoval covers healthy aging, bone health, and caregiving. Her background in gerontology research informs her coverage of the conditions that shape life after 60, from osteoporosis to sleep changes."},
{"name": "Owen McAllister", "slug": "owen-mcallister", "role": "writer",
"credentials": "BA, Communications",
"bio": "Owen McAllister writes about digestive health and chronic pain. Diagnosed with Crohn's disease at 19, he combines lived experience with careful reporting on the conditions readers are often too embarrassed to ask about."},

# --- Medical reviewers (role: medical reviewer) ---
{"name": "Karen Shale, MD", "slug": "karen-shale-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Internal Medicine",
"bio": "Dr. Karen Shale is a board-certified internist with 18 years of primary-care practice experience. She reviews articles on chronic disease management, cardiovascular risk, and preventive screening, and she teaches clinical reasoning to internal medicine residents."},
{"name": "Anil Bhatt, MD", "slug": "anil-bhatt-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Cardiology",
"bio": "Dr. Anil Bhatt is a board-certified cardiologist focusing on heart rhythm disorders and heart failure. He reviews cardiology and blood-pressure content, and practices at a large community heart center where he directs the anticoagulation clinic."},
{"name": "Grace Okonkwo, MD", "slug": "grace-okonkwo-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Psychiatry",
"bio": "Dr. Grace Okonkwo is a board-certified psychiatrist specializing in mood and anxiety disorders. She reviews the site's mental health coverage and maintains an outpatient practice with a focus on measurement-based care."},
{"name": "Steven Marsh, PharmD", "slug": "steven-marsh-pharmd", "role": "medical reviewer",
"credentials": "PharmD, BCPS",
"bio": "Dr. Steven Marsh is a board-certified pharmacotherapy specialist who reviews drug monographs, interaction guidance, and medication-safety articles. He spent a decade as a clinical pharmacist on an inpatient internal-medicine service."},
{"name": "Lucia Ferreira, MD", "slug": "lucia-ferreira-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Gastroenterology",
"bio": "Dr. Lucia Ferreira is a board-certified gastroenterologist who reviews digestive-health content, from reflux to inflammatory bowel disease. Her clinical interests include IBS and nutrition in GI disease."},
{"name": "Robert Yuen, MD", "slug": "robert-yuen-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Endocrinology",
"bio": "Dr. Robert Yuen is a board-certified endocrinologist reviewing diabetes, thyroid, and hormonal health articles. He runs a diabetes technology clinic and has a special interest in making insulin regimens workable in real life."},
{"name": "Danielle Hart, MD", "slug": "danielle-hart-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Family Medicine",
"bio": "Dr. Danielle Hart is a board-certified family physician who reviews pediatric, pregnancy, and general wellness content. She practices full-spectrum family medicine, including obstetrics, in a semi-rural health system."},
{"name": "Miguel Santana, MD", "slug": "miguel-santana-md", "role": "medical reviewer",
"credentials": "MD, Board-Certified Pulmonology",
"bio": "Dr. Miguel Santana is a board-certified pulmonologist reviewing asthma, COPD, and sleep-medicine articles. He directs a pulmonary rehabilitation program and is a vocal advocate for smoking-cessation support."},
]
Loading