PROJECT · shipped
Xzema
Eczema treatments mapped to their actual evidence: 25,037 papers and 1.1 million community reports, distilled into human-reviewed dossiers.
Next.js · Supabase · extraction pipeline · OpenAlex · Crossref · evidence grading
Eczema treatments, mapped to their actual evidence
Parents make health decisions at 2am off advice with invented sources.
What it is
Xzema turns the eczema research record into treatment dossiers a parent can actually use. Every treatment shows two things separately: what the research says (an evidence grade computed from study designs) and what the community does (interest measured across 1.1 million patient posts). The gap between those two axes is presented as a finding in itself, because a treatment with eighteen thousand mentions and nineteen papers is not the same kind of knowledge as one with five thousand mentions and twenty-eight trials.
The problem
My son developed eczema and multiple allergies before he could talk, and the internet's answer was confident advice with weak sourcing. The structural problem is that evidence and enthusiasm look identical in a feed. Separating them requires reading the literature at scale, grading it honestly, and refusing to blend the result into one tidy score.
What I built
A pipeline from corpus to dossier: 25,037 papers sourced and triaged, 9,257 fully extracted into structured findings, treatments, and safety records; community signal triaged from 1.1 million posts into intervention mentions and trigger reports; evidence grades computed from study design rather than trusting stated labels; and a synthesis layer that drafts each dossier from structured rows only, with every sentence mechanically required to reference its source rows.
The verification story
This corpus had a trap in it: the evidence levels recorded at extraction were systematically inflated. The grading rubric is therefore sanity-gated before anything publishes: topical corticosteroids and dupilumab must grade as strong evidence, and elimination diets must not, or the rubric is wrong and nothing ships. The gate caught exactly that inflation on the first run. Every citation on every dossier must resolve against OpenAlex and Crossref at build time, failures are dropped and logged rather than published, and every verdict passes human review before it appears. Numbers come from the database; the model only phrases.
What broke and what I learned
The first version of this project was a richer app that never shipped. The version that shipped is smaller: one page type that matters, twenty treatments chosen by a documented query, and a publishing gate a human controls. Scope discipline was the feature.
Status
Live, with dossiers publishing as verdicts clear review.