Inspiration (Salma Bushra)

Since childhood, I've been surrounded by women who are constantly in excruciating pain. They've had to leave work early because of an intense migraine, or cancel plans because they couldn't move from the pain in their back and lower body. As a kid, it was daunting to watch so many strong, capable women practically topple over and stay down for days, then force themselves back up, simply because there was no real help.

I was a healthy, active child, but as I grew up, I started to experience these exact things. I've been in and out of hospital ever since, in rooms full of professionals and full of tears, anxiety and frustration. Rooms where you're dismissed "because every woman goes through it" or because "it's just a bit of anxiety". I often wonder: if I'd been able to remember and explain every symptom, would they have taken me seriously and got me the help I needed sooner?

I'm not alone. A UK parliamentary report link on women's reproductive health conditions found that 75.2% of endometriosis patients were first misdiagnosed with another physical or mental health condition, and that 80% of women with adenomyosis felt completely dismissed by clinicians while trying to get a diagnosis. Someone I know was misdiagnosed with IBS for 7 years, until her second trip to A&E, when she was finally diagnosed with endometriosis and adenomyosis. The more I researched, the more I found the same harrowing story from women everywhere.

Part of the problem is that these are invisible illnesses. Women experience so many different symptoms, quite literally from head to toe, that it's hard to get a correct diagnosis, or even to get to the point of being diagnosed at all.

Six years later, I have PMOS and I'm being investigated for bowel endometriosis. I needed a tool I could actually use: something to help me communicate, and to take away some of the stress of constantly having to advocate for myself.

That's where HerHealth comes in.

What it does

HerHealth is a women's health tracker that helps you notice when something isn't normal, and walk into your GP with the evidence. It has three parts:

  • My health: log your periods, symptoms (each with a None / Mild / Moderate / Severe slider), pain, and how much it's affecting your day from 0 to 10. You get charts of your cycle, plus a "What we noticed" section that checks your log against NHS and NICE guidance, like cycles outside 21–35 days, heavy bleeding, bleeding between periods or after sex, bloating on 12+ days a month, and perimenopause symptoms. Every warning tells you why, links the NHS page it's based on, and lists tests you could ask your GP about. Urgent signs, like bleeding after menopause or severe pelvic pain, are flagged straight away.
  • Ask AI: describe how you feel in your own words. The chat asks follow-up questions, picks up warning signs and explains your results in plain English. It never diagnoses.
  • Quick check: a one-off form if you don't want to track over time.

On top of that:

  • A PMOS (formerly PCOS) pattern check using a machine learning model trained on 541 real patients, with its accuracy shown right next to the result.
  • A GP summary PDF: a short questionnaire (medicines, what you've already tried, anything else going on in your life like stress or a new contraceptive), then a PDF with your charts, warnings and questions to ask.
  • Apple Watch / Apple Health import for cycle and symptom data.
  • Privacy first: nothing is stored on our server. Your log lives in your browser session, and you can download or delete it any time.

How we built it

  • App: Python + Streamlit, deployed on Streamlit Community Cloud.
  • PMOS check: scikit-learn, trained on the public Kaggle PCOS dataset (541 patients), using only questions you can answer at home (no blood tests or scans). We compared logistic regression and a random forest using 5-fold cross-validation, and the random forest won (AUC 0.896). We set the cut-off so it catches at least 85% of PMOS cases, because for screening, missing someone is worse than a false alarm.
  • Warning signs: rules written from NHS pages and NICE guidelines (NG88 heavy periods, NG73 endometriosis, NG12 suspected cancer, NG23 menopause), each with its source attached.
  • Chat: gpt-oss-120b via Groq. It only turns what you type into structured answers and explains results. The actual score always comes from our model, not the LLM. Personal details like emails and phone numbers are removed before anything is sent, and a safety filter stops it from ever diagnosing.
  • Charts and PDF: Altair for in-app charts, Matplotlib + ReportLab for the PDF.
  • Apple Health: the export file is read with defusedxml, so a malicious upload can't crash the app.
  • Testing: 14 automated tests with pytest, covering the model, safety filters, NHS rules, Apple import and the PDF.

Challenges we ran into

  • Data, data, data. We wanted to cover more than PMOS: endometriosis, fibroids, heavy periods, perimenopause. But we couldn't find a single open dataset with real women's symptoms linked to a confirmed diagnosis for these conditions. Even the datasets listed for this hackathon didn't have it. The big UK sources (UK Biobank, CPRD GP records) need formal applications that take months. We emailed several research teams asking for access, but nothing came through in time. So for everything except PMOS, we used NHS and NICE guidance as rules instead of training a model, and we're upfront about that in the app.
  • Our PMOS data isn't from the UK. It comes from hospitals in Kerala, India, so we can't promise the same accuracy for UK women.
  • Honest accuracy vs looking impressive. "79% accuracy" sounds fine, but a model that says no to everyone would still score 67% on this data. We had to work out which numbers actually matter and how to show them so anyone can understand.
  • Bias. When we split results by group, the model gives more false alarms for people with a BMI of 30+ and for under-25s. We show this in the app instead of hiding it.
  • Keeping the AI safe. Making sure the chatbot never says "you have X" and never makes up a score.
  • Real-life edge cases: overlapping period logs, not assuming someone's age or height, and huge Apple Health exports.

Accomplishments that we're proud of

  • This was our first ever hackathon, and we're all in first year. In around 24 hours we went from an idea to a working app that we think could have real impact, and we learnt a huge amount along the way.
  • We tested it with real users. We showed early versions to around five women. All of them liked it and gave us suggestions, and we built in as many of those as we could before submitting.
  • Every warning tells you why and links its NHS/NICE source. No black box.
  • We show the model's accuracy inside the app in plain English: in testing it caught about 86 in 100 people with PMOS and correctly reassured about 76 in 100 without it.
  • A GP summary that turns months of "idk, it's just been weird" into something a GP can read in two minutes.
  • Apple Watch import, a design that works on phone and laptop, and no data stored on our side.
  • 14 automated tests, including ones that prove the AI can't diagnose.

What we learned

  • Women's health has a real data gap. The hard part isn't building the AI, it's that the data to build it often doesn't exist or is locked away.
  • Accuracy on its own is misleading. For screening, you're always trading catching more cases against raising more false alarms, and you have to be honest about which one you picked.
  • When good data doesn't exist, following clinical guidance can be more trustworthy than forcing a model.
  • How to use an LLM safely: let it talk, don't let it decide.
  • Talking to real users early changes what you build. The feedback we got shaped the final version.

What's next for Her Health

1. Women's health across a whole lifetime

Our goal is end-to-end guidance, tracking and detection of anything unusual across every stage of a woman's life: first periods, contraception, pregnancy and after birth, perimenopause, menopause and beyond. Each stage has different "normal", so the warnings should change with it. For example, bleeding is expected at 25 but needs urgent checking after menopause.

2. Better data

  • Source good quality, reliable data for women's health metrics mapped to conditions like endometriosis, fibroids, heavy menstrual bleeding and perimenopause. We'll keep chasing the research teams we emailed and apply through formal routes like UK Biobank, CPRD and Birmingham's UK PCOS database.
  • Until then, keep building on NHS and NICE guidance, so every warning is backed by an official source.

3. A more accurate, fairer model

  • Test the PMOS model on UK women from different backgrounds, and fix the bias we found for BMI 30+ and under-25s.
  • Use months of tracked cycle data as an input instead of relying on memory.
  • Once we have the data, build checks for more conditions, starting with endometriosis.

4. More guardrails and safety checks

  • Catch entries that don't make sense, like a 3-day cycle or a typo in weight, before they trigger a warning.
  • Have clinicians review every new rule before it goes live.
  • Keep tracking how often we miss real cases or raise false alarms, and act if those numbers slip.
  • Stress-test the AI chat to make sure it can never skip a warning, diagnose, or make up a score.

5. Connecting to the NHS, with consent

  • With your permission, send warning flags and your GP summary straight to your GP practice, so you don't have to print anything or explain it all from scratch.
  • You choose exactly what gets shared, and you can withdraw consent any time.

6. New features

  • Optional secure accounts so your log can follow you across devices, encrypted and fully under your control.
  • More wearables: Fitbit, Garmin, Oura and Android Health Connect, not just Apple.
  • Smart reminders: period due, log today's symptoms, and cervical screening reminders.
  • Mood and mental health tracking linked to your cycle, to help spot things like PMDD.
  • Medicine and contraception tracking, including side effects, so the GP summary is even more complete.
  • More languages and better accessibility, so it works for everyone, not just fluent English speakers.

7. A clearer, friendlier design

  • Our testers told us the home page could be clearer, so we're reworking it: plain-English labels that say what each part does, a calendar view of your cycle, and a chat that feels like a real back-and-forth conversation.
  • Test every design change with real users, and follow the NHS design system and accessibility standards (WCAG 2.2 AA) so it works with screen readers, larger text and on any device.
  • Add a short guided walkthrough for first-time users.

8. Testing it in the real world

  • Build on our first round of feedback from around five women with bigger user testing, starting with students at the University of Leeds.
  • Work with GPs and gynaecologists to review the questions, warnings and GP summary.

9. Making it safe to launch

  • Work towards the standards a real NHS health app needs: UK GDPR and a data protection impact assessment, the NHS clinical safety standard (DCB0129), the NHS Digital Technology Assessment Criteria (DTAC), and registering with the MHRA as a medical device if needed.
  • Long term, a feature like this could sit inside the NHS App.

Built With

Share this project:

Updates

Submission history