Danny Englander Logo

← All code projects

Rare Zebra

A fast, static search tool for rare diseases built on real Orphadata — Astro, Tailwind 4, daisyUI and Pagefind with five live facets and no backend.

Visit siteSource on GitHubStarted September 2026MIT (code) · CC BY 4.0 (data)

After being diagnosed with two rare diseases, Myasthenia gravis and Rippling muscle disease, I wanted a faster way to explore conditions like them than the sources I’d been reading. Rare Zebra is the result: a search page where every rare disease gets its own pre-rendered page, with instant faceted filtering over real data. Much of it was built with Claude Code from my phone, dictating with Wispr Flow rather than typing.

The data is real

diseases.generated.json is built by a script that downloads Orphadata’s free bulk products (no API key needed) and cross-references them by ORPHAcode — classifications for names and body systems, alignments for synonyms, natural-history and epidemiology files for inheritance, age of onset and prevalence, and the phenotype file for HPO-coded clinical signs. The dataset is currently a ~920-disease sample of Orphanet’s 10,101, and the page says so plainly so a missing result isn’t read as “this isn’t real.”

One detail that mattered: eligibility is based on Orphanet’s DisorderType, not position in the classification tree. An earlier leaf-nodes-only rule silently dropped Myasthenia gravis because it has subtypes beneath it.

Search without a server

Pagefind indexes the built HTML after astro build, and a plain-JS script calls its API directly for instant search with live facet counts. Five facets — body system, inheritance pattern, age of onset, rarity class and more — are wired generically, so adding one is a matter of tagging the detail page. Results paginate with a “Show 20 more” button rather than infinite scroll or numbered pages, so you always know how much is left and back-navigation keeps its place.

Accessibility and attribution

A Playwright + axe-core suite scans the search page and a detail page in both light and dark themes against WCAG 2.1 A/AA. It caught a real contrast failure in the light theme’s secondary text on the first run. Orphadata’s CC BY 4.0 license is honored in the site footer with their own citation format and a dynamically pulled data-release date.