Appearance
Generator Genogramu Onkologicznego
Czarno-biały genogram medyczny zgodny ze standardami używanymi w genetyce klinicznej i onkologii. Proof of Concept dla rysowania hierarchicznych struktur rodzinnych z profesjonalną symboliką medyczną.
🚀 Jak uruchomić
Projekt nie wymaga instalacji dependencies — uruchom bezpośrednio lokalnym serwerem HTTP:
bash
python3 -m http.server 8000
# Następnie otwórz: http://localhost:8000Alternatywnie użyj dowolnego lokalnego serwera (nginx, Apache, VS Code Live Server).
⚡ Tech Stack
- HTML5 + CSS3 + Vanilla JavaScript — zero build step, działa od razu
- D3.js v7 (CDN) — wizualizacja hierarchiczna i rendering SVG (unverified — confirm version)
- localStorage API — persystencja danych w przeglądarce (unverified — confirm implementation)
- SVG patterns — symbolika medyczna (wypełnienia dla statusów onkologicznych) (unverified)
- Cloudflare Pages — deployment target (wrangler.toml)
✨ Funkcjonalność (unverified — confirm with team)
Formularz Medyczny
- Imię i nazwisko
- Płeć (M/K)
- Relacja rodzinna (propositus, rodzic, dziecko, rodzeństwo, etc.)
- Status onkologiczny:
- Zdrowy (białe wypełnienie)
- Chory na raka (czarne wypełnienie)
- Nosiciel mutacji (pół-wypełnienie)
- Typ nowotworu (rak piersi, jelita, etc.)
- Rok urodzenia/śmierci
- Wiek w chwili diagnozy
- Notatki kliniczne (BRCA1/2, leczenie)
Rendering
- Czarno-biały layout (gotowy do druku medycznego)
- Hierarchiczne rozmieszczenie pokoleń
- Sibship lines dla rodzeństwa
- Wypełnienia SVG według statusu onkologicznego
- Statyczny układ (bez drag & drop)
Persystencja i Dane
- Auto-save w localStorage — zmiany zapisują się automatycznie
- Auto-load przy odświeżeniu strony
- Randomizer — generator testowych struktur rodzinnych (20+ osób)
- Export SVG — gotowy do dokumentacji medycznej
- Export JSON — dane do archiwizacji
🏥 Standard Genogramu Onkologicznego
Genogram onkologiczny jest narzędziem diagnostycznym używanym przez genetyków klinicznych, onkologów i poradnie genetyczne do:
- Wizualizacji agregacji nowotworów w rodzinach
- Identyfikacji wzorców dziedziczenia (autosomalny dominujący, recesywny)
- Kwalifikacji do badań genetycznych (BRCA1/2, Lynch syndrome, TP53)
- Dokumentacji medycznej dla NFZ i ubezpieczycieli
Symbole (Standard Medyczny)
| Symbol | Znaczenie |
|---|---|
| □ | Mężczyzna zdrowy |
| ■ | Mężczyzna chory na raka |
| ◧ | Nosiciel mutacji (pół-wypełnienie) |
| ○ | Kobieta zdrowa |
| ● | Kobieta chora na raka |
| ⨯ | Osoba zmarła (przekreślenie) |
Relacje
- ━━━ Pozioma gruba linia = Małżeństwo
- │ Pionowa linia = Rodzic → Dziecko
- ─── Pozioma cienka = Sibship line (rodzeństwo)
Layout Hierarchiczny
□═══○ (Dziadkowie)
│
□═══○ (Rodzice)
─┬─
┌──┼──┐
□ ■ □ (Propositus + Rodzeństwo)
│
■═══○ (Partner)
└─┬─┘
□ ○ ■ (Dzieci)🎯 Przypadki Użycia
Poradnia Genetyczna
Pacjent z podejrzeniem dziedzicznego raka piersi:
- Lekarz wypełnia genogram rodzinny
- Zaznacza osoby chore (czarne wypełnienie)
- Zaznacza nosicieli mutacji BRCA1 (pół-wypełnienie)
- Eksportuje SVG do dokumentacji medycznej
- Wysyła do konsultacji genetycznej
Badanie Naukowe
Analiza agregacji nowotworów w rodzinach:
- Zbieranie wywiadów rodzinnych od pacjentów
- Tworzenie genogramów dla każdej rodziny
- Eksport JSON do analizy statystycznej
- Identyfikacja wzorców dziedziczenia autosomalnego
Edukacja Medyczna
Prezentacja przypadków klinicznych:
- Stworzenie przykładowego genogramu
- Eksport SVG do prezentacji/publikacji
- Omówienie mechanizmów dziedziczenia
📦 Deployment
Cloudflare Pages
Projekt zawiera konfigurację wrangler.toml dla Cloudflare Pages:
bash
# Deploy przez Wrangler CLI
npx wrangler pages deploy . --project-name=genogram-onko
# Lub przez Cloudflare Dashboard
# Wrzuć pliki przez UI (Build command: puste, Output: /)Build settings:
- Build command: (puste — brak build step)
- Build output directory:
/ - Framework preset: None
📚 Standardy i Źródła
Podstawy Medyczne
- McGoldrick & Gerson (1985) — "Genograms in Family Assessment"
- NSGC (National Society of Genetic Counselors) — Professional Guidelines
- ASCO (American Society of Clinical Oncology) — Cancer Risk Assessment Standards
- NCCN (National Comprehensive Cancer Network) — Genetic/Familial High-Risk Assessment
Inspiracje
- scichelli/genogram-generator — open-source genogram implementation
🔮 Roadmap (unverified — confirm current status)
- [x] Persystencja localStorage
- [x] Randomizer dla testów (20+ osób)
- [x] Auto-render przy starcie
- [ ] Import z JSON (restore backup)
- [ ] Więcej typów mutacji (BRCA1, BRCA2, Lynch, TP53)
- [ ] Ryzyko względne (risk scoring)
- [ ] Integracja z HL7 FHIR (FamilyMemberHistory)
- [ ] Backend dla wielu pacjentów (Cloudflare Workers + D1)
- [ ] Print mode (optymalizacja PDF)
📖 Przykład Kliniczny
Pacjent: Jan Kowalski, 45 lat
- Podejrzenie dziedzicznego raka jelita grubego
- Matka: rak jelita w wieku 52 lat (†)
- Brat: rak jelita w wieku 48 lat
- Dziadek ze strony matki: rak żołądka (†)
- Wskazanie: badanie mutacji MLH1/MSH2 (Lynch syndrome)
Genogram pozwala na:
- Wizualizację agregacji nowotworów w linii matczynej
- Identyfikację wzorca autosomalnego dominującego
- Kwalifikację rodziny do badań genetycznych
- Dokumentację kliniczną dla NFZ
🤝 Contributing
To jest Proof of Concept — funkcjonalność może być niepełna lub eksperymentalna. Przed użyciem w środowisku klinicznym skonsultuj z zespołem medycznym i prawnymi standardami dokumentacji.
Made for medical professionals 🏥
Standard genogram generator for oncology genetic counseling.