Part of the ZarishSphere Platform - A No-Code FHIR Healthcare Data Management System
This repository contains FHIR profile definitions, implementation guides, and conformance resources for the ZarishSphere Platform. It defines how FHIR resources should be structured and constrained for use in the platform.
- FHIR Version: R4 (4.0.1)
- Profiling Tool: FHIR Shorthand (FSH)
- IG Publisher: FHIR IG Publisher
- Documentation: MkDocs Material with Mermaid diagrams
- Java: Version 11+ for IG Publisher (Download Java)
- Node.js: Version 18+ for SUSHI (Download Node.js)
- Python: Version 3.8+ for MkDocs (Download Python)
- Git: For version control
java -version # Should show Java 11 or higher
node --version # Should show v18.x or higher
python3 --version # Should show Python 3.8 or highercd ~/Desktop
git clone https://github.com/ZarishSphere-Platform/zarish-fhir-profiles.git
cd zarish-fhir-profiles# Install SUSHI globally
npm install -g fsh-sushi
# Verify installation
sushi --version# Download IG Publisher
curl -L https://github.com/HL7/fhir-ig-publisher/releases/latest/download/publisher.jar -o publisher.jar
# Or use the update script
./_updatePublisher.sh# Compile FSH to FHIR
sushi .
# Run IG Publisher
java -jar publisher.jar -ig ig.iniThe output will be in the output directory.
# Open in browser
open output/index.html
# Or serve with a local server
cd output
python3 -m http.server 8000zarish-fhir-profiles/
βββ input/
β βββ fsh/ # FHIR Shorthand definitions
β β βββ profiles/ # Profile definitions
β β βββ extensions/ # Extension definitions
β β βββ valuesets/ # Value set definitions
β β βββ examples/ # Example instances
β βββ pagecontent/ # IG narrative content
β βββ images/ # Diagrams and images
βββ docs/ # MkDocs documentation
β βββ index.md
β βββ profiles/
β βββ extensions/
β βββ guides/
βββ output/ # Generated IG (gitignored)
βββ mkdocs.yml # MkDocs configuration
βββ ig.ini # IG Publisher configuration
βββ sushi-config.yaml # SUSHI configuration
βββ README.md
- ZarishPatient: Extended patient profile with Bangladesh-specific extensions
- ZarishPediatricPatient: Specialized profile for pediatric patients
- ZarishObservation: Vital signs and clinical observations
- ZarishCondition: Diagnoses and health conditions
- ZarishMedicationRequest: Medication prescriptions
- ZarishEncounter: Patient encounters and visits
- ZarishPractitioner: Healthcare provider information
- ZarishOrganization: Healthcare organization details
- ZarishLocation: Facility and location information
- Bangladesh National ID: Extension for national identification
- Religion: Patient religious affiliation
- Ethnicity: Ethnic background
- Occupation: Patient occupation
- Emergency Contact: Extended emergency contact information
All profiles use appropriate value sets from:
- SNOMED CT
- LOINC
- ICD-10
- Custom Bangladesh-specific terminologies
Comprehensive documentation is available at: https://zarishsphere-platform.github.io/zarish-fhir-profiles/
The documentation includes:
- Profile definitions with constraints
- Extension documentation
- Usage examples
- Implementation guides
- Interactive diagrams
# Install MkDocs Material
pip install mkdocs-material mkdocs-mermaid2-plugin
# Serve documentation
mkdocs serve
# Build documentation
mkdocs build| Command | Description |
|---|---|
sushi . |
Compile FSH to FHIR JSON |
java -jar publisher.jar -ig ig.ini |
Build Implementation Guide |
mkdocs serve |
Serve documentation locally |
mkdocs build |
Build documentation |
# Compile FSH
sushi .
# Validate with IG Publisher
java -jar publisher.jar -ig ig.ini# All examples are validated during IG build
# Check output/qa.html for validation resultsCreate a new file in input/fsh/profiles/:
Profile: ZarishNewProfile
Parent: Patient
Id: zarish-new-profile
Title: "Zarish New Profile"
Description: "Description of the new profile"
* identifier 1..* MS
* name 1..* MS
* gender 1..1 MSsushi .
java -jar publisher.jar -ig ig.iniCreate documentation in docs/profiles/new-profile.md
Update mkdocs.yml to include the new profile
- FHIR Version: R4 (4.0.1)
- Base Profiles: US Core, International Patient Summary
- Validation: All profiles validated against FHIR specification
- Conformance: Meets FHIR conformance requirements
# Check FSH syntax
sushi . --log-level debug
# Validate YAML configuration
cat sushi-config.yaml# Update publisher
./_updatePublisher.sh
# Run with verbose logging
java -jar publisher.jar -ig ig.ini -tx n/a# Check MkDocs configuration
mkdocs build --strict
# Reinstall dependencies
pip install --upgrade mkdocs-material- Fork the repository
- Create/modify FSH profiles
- Build and validate
- Update documentation
- Submit pull request
This project is part of the ZarishSphere Platform.
- zarish-fhir-server - FHIR Server Implementation
- zarish-fhir-data - Terminology Data
- zarish-frontend-shell - Frontend Application
- Browse Documentation
- Check Issues
- Review IG Publisher QA Report