Files
bd-fhir-national/README.md
2026-03-16 18:36:06 +06:00

2.9 KiB

BD FHIR National Repository & Validation Engine

This is the central interoperability gateway for the Directorate General of Health Services (DGHS), Bangladesh. It provides a high-performance FHIR R4 repository with mandatory validation against national clinical standards.


🚀 Quick Start

  1. Configure Environment: cp .env.example .env (See Project Manifest for variable descriptions).
  2. Initialize Database: Run postgres/fhir/init.sh and postgres/audit/init.sh on the host.
  3. Deploy: docker compose up -d

📚 Operational Documentation

All technical and procedural guides are located in the ops/ directory. Refer to these before making changes to the production environment:

Guide Description
Project Manifest Full file inventory, architectural decision record, and pre-flight deployment checklist.
Technical Operations Complete system overview, traffic flow, request lifecycle, infrastructure components, security model, and operational runbooks for any DevOps engineer taking over the deployment.
Deployment Guide Step-by-step first deployment on Ubuntu 22.04, including the critical init script fix, nine mandatory acceptance tests, and subsequent image upgrade procedure.
Keycloak Setup Creating the fhir-admin role, fhir-admin-pipeline client, vendor client template, sending_facility token mapper configuration, and token verification tests.
Adding Additional IGs How to load specialised IGs (MCCoD, IMCI) alongside BD Core IG — code changes, package loading, resource type registration, Gitea workflow updates, and upgrade checklist.
Version Upgrade Integration Seven-step ICD-11 version upgrade procedure, Python integration code for version_upgrade.py, cache flush and post-flush verification, and rollback procedure.
Scaling Roadmap Phase 1→2→3 capacity thresholds, replica scaling steps, monthly audit partition maintenance cron, PostgreSQL monitoring queries, and IG upgrade procedure.

🛠 Tech Stack

  • Engine: HAPI FHIR 7.2.0 (R4) on Spring Boot 3.2
  • Database: PostgreSQL 15 + pgBouncer (Session Mode)
  • Auth: Keycloak (HRIS Realm)
  • CI/CD: Gitea Actions