AI-assisted Noma (cancrum oris) screening and outbreak surveillance for community health workers in sub-Saharan Africa.
# lumos.health
AI-assisted screening for **Noma** (cancrum oris) and geographic outbreak
surveillance, built for community health workers in sub-Saharan Africa.
A health worker photographs a child's mouth. The orchestrator runs a three-stage
pipeline — visual WHO staging, clinical reasoning, and referral routing to the
nearest Noma-capable facility — and returns a triage verdict with a referral note
in the worker's language. A background agent clusters recent cases geographically
and raises an outbreak alert when a cluster crosses a threshold.
> **This is a screening aid, not a diagnosis.** Every result is generated by a
> language model and must be confirmed by a trained health professional. The
> system is built to fail towards "refer for in-person assessment", never towards
> "healthy".
---
## Repository layout
```
backend/ Express + TypeScript orchestrator (API, triage pipeline, surveillance)
frontend/ Vite multi-page app (landing + screening, case map, 3D result viewer)
docs/ Tutorials, how-tos, reference and design rationale
diagrams/ Architecture diagrams (mermaid source + editable excalidraw + rendered)
```
## Documentation
| Document | Kind |
|---|---|
| Run your first screening | Tutorial — local setup end to end, no accounts needed |
| How to run the tests | How-to — quality gates, adding a test |
| Contributing | How-to — CI gates and codebase conventions |
| Frontend reference | Reference — pages, modules, exports, env vars |
| Testing reference | Reference — what each suite covers |
| Why the app fails towards "refer" | Explanation — the safety and privacy decisions |
Component docs sit next to the code: `backend/README.md`
and `frontend/README.md`.
## Quick start
The fastest path needs no database, no model provider and no cloud account.
```bash
# Terminal 1 — API in mock mode
cd backend
cp .env.example .env # MOCK_MODE=true is already the default
npm install
npm run dev
# Terminal 2 — web app
cd frontend
npm ins …