Synthetic Arab genomics, variant atlas, and precision-medicine research workbench.
RESEARCH SANDBOX — NOT CLINICAL OR DIAGNOSTIC
Hayat is a runnable, safety-bounded reference MVP for synthetic genomics research. It uses fictional or synthetic demo data only and keeps regulated integrations behind documented adapter boundaries.
flowchart LR
Portal[research-portal] --> API[Node HTTP API]
API --> Core[packages/core deterministic domain engine]
Core --> Seed[data/samples synthetic fixtures]
API --> Contracts[OpenAPI 3.1 + JSON Schemas]
Core -. future adapter .-> Postgres[(PostgreSQL)]
Core -. future adapter .-> MinIO[(MinIO)]
- Synthetic sample registry and family trio viewer
- Pedigree graph data with fictional consanguinity examples
- Toy Arab variant atlas and frequency lookup
- Consent event simulator with revocation state
- Research report export with clinical limitations
| Tool | Version | Required for |
|---|---|---|
| Node.js | 20+ | API, tests, static portal |
| npm | bundled with Node | script runner |
| Docker Compose | v2+ | optional service topology validation |
| GitHub CLI | latest | optional publication and roadmap issues |
npm run verify && npm startOpen http://localhost:4172. The local API also serves /openapi.json.
Copy .env.example if you want to override defaults.
| Variable | Default | Purpose |
|---|---|---|
| PORT | 4172 | Local API and portal port |
| APP_ENV | development | Runtime mode label |
| DATA_MODE | synthetic | Documents the demo-data boundary |
Seed data lives in data/samples/seed.json. It is fictional or synthetic and intentionally small enough for tests and code review.
curl http://localhost:4172/health
curl http://localhost:4172/v1/families/:id/pedigree| Route | Purpose |
|---|---|
POST /v1/samples/import-synthetic |
Import a synthetic VCF-like fixture |
GET /v1/families/:id/pedigree |
Get synthetic family pedigree |
GET /v1/variants |
List toy variants |
POST /v1/prioritization/run |
Run toy variant prioritization |
GET /v1/prioritization/runs/:id |
Get prioritization run |
POST /v1/consent/events |
Append synthetic consent event |
POST /v1/data-access-requests |
Create a sandbox data access request |
GET /v1/reports/:id |
Get a research sandbox report |
GET /v1/audit/events |
List audit events |
npm run lint
npm run build
npm test
npm run verify- No real genomic data, health records, diagnosis, treatment recommendation, or clinical decision support.
- Toy variant interpretation requires certified labs, licensed medical geneticists, genetic counseling, ethics approval, and validated pipelines before real use.
- The consent ledger is an educational simulator, not a legal consent-management system.
Read NOT_FOR_PRODUCTION.md, docs/safety-boundaries.md, and docs/security-privacy.md before extending this MVP.
Arabic setup notes are in docs/ar/QUICKSTART.md.
- Add GA4GH Beacon-compatible synthetic endpoint
- Implement Phenopackets import/export for toy data
- Create Arabic genetic counseling glossary
- Build synthetic genome fixture generator
- Draft secure enclave architecture note
See CONTRIBUTING.md, CODE_OF_CONDUCT.md, and SECURITY.md.
Apache-2.0. See LICENSE.