A health condition explorer and treatment resource platform for people navigating complex, underdiagnosed conditions. Provides plain-language, evidence-graded information to support better conversations with healthcare providers.
Version: 0.1.0 — Phase 0 (Local Prototype) Status: Active development
This is an informational resource only. It is not a diagnostic tool and does not provide medical advice.
Information Diagnostics helps users understand:
- Complex conditions that frequently co-occur and are often missed (MCAS, hEDS, POTS, lipedema, fibromyalgia, and others)
- Symptom patterns across body systems, with evidence-weighted condition associations
- Treatment options graded by evidence level, including mechanism, typical dosing, and cautions
- Comorbidity relationships between conditions, with overlap statistics
- Undiagnosed Explorer — Symptomatic for years without a clear diagnosis. Uses the symptom mapper to identify potential conditions and generate a structured summary to bring to a doctor.
- Already-Diagnosed User — Knows their condition(s) and wants to understand treatment options, comorbidities, and the evidence behind recommendations.
| Page | File | Description |
|---|---|---|
| Home | index.html |
Entry point and orientation |
| Condition Library | explore.html |
Browse and search all conditions |
| Condition Detail | condition.html |
Full detail: symptoms, comorbidities, treatments, sources |
| Symptom Index | symptoms.html |
Browse all symptoms by body system |
| Symptom Mapper | questionnaire.html |
5-step wizard → matched conditions |
| Results | results.html |
Tiered condition matches with treatment links |
| Treatment Explorer | treatment.html |
Browse treatments by condition, type, or evidence level |
| Source Library | sources.html |
Curated references with credibility notes |
| Design System | design-system.html |
Component and token showcase |
A 5-step guided flow:
- Intro & disclaimer
- Body system selection
- Symptom selection (with search)
- Qualifiers (e.g., "worse when standing", "triggered by food")
- Scored results
Scoring algorithm: Each symptom carries condition-specific weights. Qualifiers apply a 1.2x boost. Scores are normalized and tiered:
| Tier | Threshold |
|---|---|
| Strong Match | ≥ 0.35 |
| Moderate Match | 0.20–0.34 |
| Possible Association | < 0.20 |
Minimum 2 matched symptoms required to surface a result. Results persist in localStorage across sessions.
All content is stored as static JSON in the data/ directory.
| File | Contents | Count |
|---|---|---|
conditions.json |
Condition records | 9 |
symptoms.json |
Symptoms with condition weights and qualifiers | 34 |
treatments.json |
Treatment entries with evidence levels | 27 |
condition-treatments.json |
Condition–treatment relationship map | — |
sources.json |
Curated citations and references | 15 |
meta.json |
Site config and content counts | — |
- MCAS (Mast Cell Activation Syndrome)
- hEDS (Hypermobile Ehlers-Danlos Syndrome)
- POTS (Postural Orthostatic Tachycardia Syndrome)
- Lipedema
- Histamine Intolerance
- Fibromyalgia
- Small Fiber Neuropathy
- Dysautonomia
- Chronic Venous Insufficiency
The MCAS–hEDS–POTS triad is specifically highlighted as a clinically meaningful cluster with significant comorbidity overlap.
| Level | Label | Meaning |
|---|---|---|
| A | Research-Backed | Multiple RCTs or strong meta-analyses |
| B | Limited Evidence | Small studies, case series, preliminary trials |
| C | Expert Consensus | Broadly accepted clinically, limited RCT data |
| D | Anecdotal | Patient-reported, community-supported, no clinical data |
| E | Contested | Significant scientific disagreement |
| Status | Meaning |
|---|---|
| Mainstream | Well-established, ICD-10 coded, formal diagnostic criteria |
| Emerging | Growing recognition, recent formal criteria |
| Contested | Significant medical community disagreement |
Pure static site — no build step, no framework, no backend required.
- HTML5 — semantic markup
- Vanilla JavaScript (ES6+) — no libraries or frameworks
- CSS3 — custom design system with CSS variables
- Google Fonts — Inter (UI), Lora (body text)
- JSON — all data loaded client-side via
fetch()
Data is loaded in parallel using Promise.all() on page init. State is managed via localStorage.
The site uses fetch() to load JSON data, which requires an HTTP server (opening file:// directly will fail due to CORS restrictions).
Option 1: VS Code Live Server (recommended)
- Open the project folder in VS Code
- Right-click
index.html - Select "Open with Live Server"
- Opens at
http://localhost:5501
Option 2: Python
cd information-diagnostics
python3 -m http.server 8080
# Visit http://localhost:8080No installation, no npm install, no build process.
information-diagnostics/
├── index.html
├── explore.html
├── condition.html
├── symptoms.html
├── questionnaire.html
├── results.html
├── treatment.html
├── sources.html
├── design-system.html
├── favicon.svg
├── css/
│ └── styles.css
├── js/
│ ├── app.js # Data loader, navigation, utilities, shared components
│ ├── questionnaire.js # Wizard state machine and scoring algorithm
│ ├── results.js # Results rendering
│ ├── explore.js # Condition library filtering
│ ├── condition.js # Condition detail page
│ └── treatment.js # Treatment explorer filtering
├── data/
│ ├── conditions.json
│ ├── symptoms.json
│ ├── treatments.json
│ ├── condition-treatments.json
│ ├── sources.json
│ └── meta.json
└── docs/
├── 01-product-plan.md # Vision, features, phasing strategy
├── 02-architecture.md # Technical architecture and data model
└── 03-content-data.md # Editorial content reference
Documented at design-system.html. Key tokens:
| Token | Value | Usage |
|---|---|---|
--color-primary |
#5B7F6E |
Calm green — primary actions |
--color-secondary |
#8B6F5C |
Warm brown — secondary elements |
--color-accent |
#C4956A |
Warm orange — highlights |
--color-text |
#2C2926 |
Near-black body text |
--color-surface |
#FAF8F5 |
Warm off-white backgrounds |
Spacing uses an 8px base unit. Evidence levels and recognition status have distinct color treatments throughout.
| Doc | Contents |
|---|---|
docs/01-product-plan.md |
Product vision, user journeys, full feature set, content standards, phase roadmap |
docs/02-architecture.md |
Data model schemas, questionnaire algorithm, local and full-stack architecture, database schema, migration path |
docs/03-content-data.md |
Human-readable editorial content for all conditions, symptoms, and treatments (source of truth for data files) |
Phase 0 (current): Local static prototype
- Vanilla JS, JSON files, no backend
- Full questionnaire flow and condition library
Phase 1 (next): Deployed MVP
- Next.js + React + Tailwind
- Supabase backend (auth, database)
- Hosted on Vercel
- Expanded to 10+ conditions
Phase 2: Depth & engagement
- Treatment tracking
- PDF export for doctor visits
- Fibromyalgia, ME/CFS, mold illness added
Phase 3: Scale & trust
- Medical advisory board
- Clinician-facing version
- Research API
Information Diagnostics is an informational resource only. It does not provide medical diagnoses, replace professional medical advice, or constitute a doctor-patient relationship. All content should be reviewed with a qualified healthcare provider.