# GestationalDMTrack-Kor

> 임신성 당뇨(GDM) 다기관 외래 export → 진단 toggle + 임신 주차별 trajectory + 분만 outcome + 산후 OGTT compliance + 차기 임신 재발 추적 standalone 웹 대시보드 (한국어, KDA·KSOG·KSPMC 호환)

## 1. 목적

GDM 환자의 외래 데이터를 한 곳에서 종합 추적하기 위한 **다기관 코호트 모니터링 대시보드** 프로토타입.

- 산부인과·내분비내과·소아과 협진 시점의 데이터가 단편적으로 흩어지는 문제 해결
- IADPSG vs Carpenter-Coustan 진단 기준 차이로 인한 보고 일관성 문제 시각화
- 산후 OGTT compliance(낮음) 및 후속 T2DM 진행 추적
- 한국 임신여성에 특화된 KDA·KSOG·KSPMC quality indicator 산출

## 2. 도메인 / 카테고리

- **도메인**: DM (특히 GDM — gestational diabetes mellitus)
- **카테고리**: 웹기반 대시보드 (다기관 코호트 모니터링)

## 3. 핵심 기능 (5가지)

1. **다기관 GDM cohort import + 진단 toggle**
   - IADPSG 75g 2h (KDA 2023 권고): FPG ≥92, 1h ≥180, 2h ≥153 (any one)
   - Carpenter-Coustan 100g 3h: FPG ≥95, 1h ≥180, 2h ≥155, 3h ≥140 (≥2 abnormal)
   - 동일 환자 코호트에서 두 기준 결과를 즉시 비교 가능

2. **임신 주차별 CGM/SMBG/인슐린 dose trajectory**
   - 임신 특이적 TIR 63-140 mg/dL (KDA 2023 목표 ≥70%)
   - 인슐린 dose per kg/day · regimen (basal-only vs basal-bolus)
   - 체중 증가 vs IOM 2009 권고 (BMI별 권고 범위 색상 코딩)

3. **분만 birth outcome 종합**
   - 거대아(≥4kg), LGA(≥90th), SGA(≤10th)
   - NICU 입원, 전자간증, 제왕절개, 견갑난산
   - cord C-peptide (태아 hyperinsulinism 지표)

4. **산후 multi-time OGTT compliance + 차기 임신 재발**
   - 6주 / 6개월 / 1년 / 2년 / 5년 시점 compliance율
   - 시점별 T2DM/preDM 발견율
   - 차기 임신 GDM 재발률 (기관별)

5. **per-site benchmark + KDA/KSOG/KSPMC quality indicator + 한국어 보고서**
   - 기관별 핵심 KPI 표 (✅ 충족 / ⚠ 경계 / ❌ 미달 색상)
   - 한국어 텍스트 보고서 내보내기 미리보기

## 4. 실행법

### 권장: 로컬 HTTP 서버 (`fetch` 정상 동작)

```bash
cd projects/2026-05-13-1-gestational-dm-track-kor
python3 dashboard_server.py
# 브라우저에서 http://127.0.0.1:8765 접속
```

### 대안: 표준 Python 서버

```bash
cd projects/2026-05-13-1-gestational-dm-track-kor
python3 -m http.server 8765
# 브라우저에서 http://127.0.0.1:8765 접속
```

### 데이터 재생성

```bash
python3 data/generate_cohort.py
```

> ⚠ `file://` 로 직접 열면 일부 브라우저(특히 Chrome)에서 `fetch('data/cohort.json')` 가 CORS로 막힐 수 있으므로 위 HTTP 서버 사용을 권장합니다.

## 5. 의존성

- **Python 3.8+** (표준 라이브러리만 사용)
- **브라우저** (Chrome / Safari / Firefox)
- **Plotly.js 2.32.0** (CDN pinned, 외부 네트워크 필요)

## 6. 디렉터리 구조

```
2026-05-13-1-gestational-dm-track-kor/
├── index.html                    # 메인 대시보드 (단일 HTML)
├── dashboard_server.py           # 보조 HTTP 서버 (선택)
├── data/
│   ├── generate_cohort.py        # 합성 cohort 생성기
│   └── cohort.json               # 60명 합성 cohort (다기관 × 다중 시점)
├── README.md
├── QA.md                         # 검수 로그
└── CHANGELOG.md
```

## 7. 데이터 스키마 요약

각 환자(`patients[].`):
- `patient_id`, `site` (SCH_BC / SNU_BD / AMC_GG), `age`, `pre_pregnancy_bmi`
- `OGTT_75g_2h` { fpg, h1, h2 }, `OGTT_100g_3h` { fpg, h1, h2, h3 }
- `diagnosis_IADPSG`, `diagnosis_CarpenterCoustan` (booleans)
- `cgm_trajectory[]` { ga_weeks, TIR_63_140, TBR_lt63, TAR_gt140, mean_glucose_mgdl, GMI_percent }
- `smbg_trajectory[]`, `insulin_trajectory[]`, `weight_trajectory[]`
- `birth_outcome` { ga_delivery_weeks, birth_weight_g, macrosomia_ge4kg, LGA_ge90pct, SGA_le10pct, preeclampsia, cesarean, NICU_admission, shoulder_dystocia, cord_c_peptide_ngml }
- `postpartum_ogtt[]` { timepoint(6w/6m/1y/2y/5y), completed, fpg, pp2h_75g, status }
- `next_pregnancy` { occurred, years_after_index, gdm_recurrence }

## 8. 검수 체크리스트

- [x] `index.html` 존재 + `<html>` `</body>` 태그 점검
- [x] `data/cohort.json` 존재 + JSON 파싱 가능
- [x] `data/generate_cohort.py` ast 파싱 가능
- [x] `dashboard_server.py` ast 파싱 가능
- [x] 의학적 디스클레이머 표기 (header 및 footer)
- [x] 외부 유료 API 호출 없음
- [x] 60명 환자 × 다기관 × 다중 시점 데이터 생성
- [x] IADPSG / Carpenter-Coustan toggle 동작
- [x] 8개 핵심 시각화 카드 구현

자세한 로그는 `QA.md` 참고.

## 9. 의학적 디스클레이머

> **본 도구는 연구·교육용이며 임상 의사결정 도구가 아닙니다.**
> 모든 환자 데이터는 합성(synthetic)된 가상 데이터로 실제 환자 정보를 포함하지 않습니다.
> 임상 적용 시 반드시 자격 있는 의료진의 직접 판단을 따르십시오.

## 10. 출처 / 참고

- **IADPSG Consensus Panel.** International association of diabetes and pregnancy study groups recommendations on the diagnosis and classification of hyperglycemia in pregnancy. *Diabetes Care.* 2010;33(3):676-682.
- **Carpenter MW, Coustan DR.** Criteria for screening tests for gestational diabetes. *Am J Obstet Gynecol.* 1982;144(7):768-773.
- **Korean Diabetes Association.** 2023 Clinical Practice Guidelines for Diabetes (당뇨병 진료지침 2023판). KDA, Seoul.
- **KSOG (대한산부인과학회).** 2024 GDM Position Statement.
- **KSPMC (대한모체태아의학회).** 임신성 당뇨 산후 추적 권고.
- **Institute of Medicine (IOM).** Weight Gain During Pregnancy: Reexamining the Guidelines. 2009.

## 11. 라이선스 / 사용 제약

- 연구·교육 목적에 한해 자유 사용
- 본 도구를 이용한 의학적 결정은 사용자 책임
- 실 환자 데이터를 적재할 경우 IRB 승인 및 개인정보 보호 조치 필수
