
Luna — PMDD Pattern Intelligence
Luna is an AI companion that learns your individual symptom patterns over time, so you can prepare instead of react, and finally have the data to advocate for yourself with a doctor.
Problem
On average, people with PMDD spend 12 years seeking answers and see an average of six healthcare providers before receiving an accurate diagnosis.
— Dr. Erin Brennand, CMAJ podcast, citing patient advocacy research.
People with PMDD see an average of six healthcare providers before anyone gets it right. Over a quarter are initially misdiagnosed with another psychiatric disorder entirely because there's no test for PMDD.
The only path to diagnosis is data.
Three months of consistent, prospective symptom tracking is what the DSM-5 requires for a clinician to confirm PMDD.

The tools that exist weren't built for this.
Clue is one of the top period tracking apps on the App Store. It does track symptoms, but it is not specific to PMDD. Its resources on the condition are buried in a content page under "Other Conditions."

The barrier isn't friction. It's felt value. Without a meaningful return, the habit never forms.
Research shows that people with PMDD have normal hormone levels but the difference is how their brain responds to normal hormonal fluctuations.
So people do what they can from apps, paper trackers to describing symptoms from memory in a doctor's office. But memory is unreliable.
According to PMDD researcher Dr. Erin Brennand, symptom histories reported retrospectively correlate with prospectively tracked data only about 60% of the time. Doctors are working from an incomplete picture.

By making the return on logging felt earlier and by reframing what tracking is actually for. Every entry a user logs in Luna is building the clinical picture a doctor needs to take them seriously.
Grounding the product in clinical reality

Clinical Foundation
Rather than inventing a symptom taxonomy, I grounded Luna's data model in the Her Mood Mentor Premenstrual Symptom Mapping Kit, developed by Jes Hagan, a certified nutritional therapy practitioner and PMDD specialist.
One finding from this source reframed the entire product: there is no blood or saliva test for PMDD. Three months of consistent symptom tracking is the clinical path to diagnosis.
Two constraints
Minimize cognitive load.
PMDD symptoms include brain fog, fatigue, and difficulty concentrating. The app will often be opened during or near symptomatic periods which are the moments when thinking is hardest.
Every interaction had to be designed for the worst-case cognitive state. A daily log completable in under 30 seconds. One tap as a valid minimum.
Emotional safety.
The app never alarms, judges, or creates urgency. Cycle phase language is gentle and action-oriented.
The severity scale uses warm terracotta rather than alarming red. The entry counter never resets because missing a day is data, not failure. On bad days, Luna acknowledges before it asks.


Same question. Different day. The interaction responds to the user's state.
AI System
What Luna actually does with your data
Luna is not a smarter period tracker. Luna analyzes it and detects patterns. The difference is that analysis requires understanding context, handling uncertainty, and knowing when not to speak.

What Luna detects
Symptom clustering by phase.
Luna tracks which symptoms appear, at what severity, and at what point in your cycle across multiple cycles. It's looking for patterns like symptoms that escalate during the luteal phase and resolve after menstruation.
Remedy and supplement efficacy.
When a user logs a remedy, Luna tracks symptom severity before, during, and after that intervention across multiple cycles. After enough data points, it can surface correlations: "Your depression severity during luteal phase has decreased since starting your birth control shot. Let's keep tracking to confirm."
External confounders.
PMDD data is noisy. A particularly severe luteal phase might be PMDD or it might be grief, a missed medication, a stressful week at work. Luna captures external circumstances as a separate data layer and uses them to explain anomalous cycles rather than misattributing them to PMDD patterns.
When Luna speaks and when it doesn't
Knowing when not to speak is as important as knowing what to say.
Cycle 1 — summary only.
One cycle of data is a baseline, not a pattern. Luna reflects back what it observed without drawing conclusions.
Cycle 2 — hypothesis with uncertainty.
When the same pattern appears twice, Luna surfaces it as a hypothesis rather than a finding. The language is deliberate: "Luna noticed this pattern across 2 cycles. Let's keep watching to see if this holds." Correlation is not causation and Luna says so explicitly.
Cycle 3 and beyond — confident insights.
After three or more cycles confirming the same pattern, Luna shifts to confident recommendations. This is the threshold the DSM-5 requires for clinical confirmation and the threshold Luna uses before speaking with confidence.
What Luna will never do
Three guardrails are non-negotiable regardless of what the data shows.
If suicidal ideation is logged at any severity level, Luna responds crisis resources immediately.
Body weight and food data are logged and tracked but never framed as problems to fix.
Substance data is captured as context for pattern analysis, never as a judgment.
How Luna improves over time
AI System
Onboarding
The onboarding flow has one job: get from knowing nothing about the user to having their first log entry without losing them along the way.
The key sequencing decision was the trust contract. It comes last deliberately at screen 7 of 8. By the time the user reaches it, Luna already knows their name, their age range, their cycle data, and their primary symptoms.
The three statements: Luna is not a diagnostic tool, see a doctor for an official diagnosis, consistency helps Luna help you, feel like a commitment between two parties who have started a relationship, not a legal disclaimer on first encounter.








Daily log
The daily log is where Luna lives with two states and two completely different interactions.
On a good day, it's a single question with five options and a warm acknowledgment after selection. Completable in under 30 seconds. Luna responds: "Good job focusing on your health. Every entry helps Luna learn your patterns."
On a bad day, the interaction changes. Luna acknowledges before it asks. The response, "This is hard, and it will pass," comes before the follow-up question. Only then does Luna offer optional deeper logging. This is the core product differentiator.



Web dashboard
The dashboard exists for one moment: the doctor's appointment. Everything on it is organized around the DSM-5 diagnostic framework. Every section answers a question a doctor actually needs answered.
The cycle heat map shows symptom severity across three cycles divided by follicular and luteal phase. That's the diagnostic picture all on one screen. Three insight cards surface the clinical evidence in plain language: primary symptoms, functional impact, cycle consistency. A physician can scan the full dashboard in under two minutes.

Design System
Typography: Instrument Sans

Color: Warm and grounded

Components: four pieces, every screen

Reflection
This project started with a problem I understood personally and spent four sessions in product thinking before opening Figma. The research, the principles, the interaction model, and the component system were all defined before a single screen was designed.
What I'm most proud is that every visual decision in this product is traceable to a product reason. The warm background anchors in Principle 2. The severity scale is clinically grounded. The trust contract comes last because the relationship needed to exist first.
