The expert-curated database of gene–inheritance–disease relationships in neurodevelopmental disorders (NDD).
Live site · Documentation · Quick start · Discussions
SysNDD curates gene–inheritance–disease relationships in NDD with a defined evidence model and versioned review workflow. This monorepo holds the three code trees that run the public site at sysndd.dbmr.unibe.ch, plus the rendered documentation book.
| Directory | Stack | What it is |
|---|---|---|
app/ |
Vue 3.5 · TypeScript · Vite 7 | Single-page web application (browse, filter, analyze, download) |
api/ |
R · Plumber · renv |
REST API, background workers, optional read-only MCP sidecar |
db/ |
MySQL 8.4 | Schema, data-prep scripts, and versioned migrations |
documentation/ |
Quarto | Documentation book published to GitHub Pages |
Each directory has its own README.md with more detail.
Prerequisites: Docker with Compose v2, Git,
and GNU Make. For host-side work you also need Node.js (see app/.nvmrc)
and R.
Brings up the app, API, workers, and databases together via Docker:
git clone https://github.com/berntpopp/sysndd.git
cd sysndd
make install-dev
make doctor
make devAfter make dev the stack is reachable at:
| Service | URL / port |
|---|---|
| App (Vite) | http://localhost:5173 |
| API (direct) | http://localhost:7778 |
| Traefik dashboard | http://localhost:8090 |
| MySQL dev / test | localhost:7654 / 7655 |
See Development for the full onboarding guide.
To iterate on the SPA against an already-running API:
cd app
npm install --legacy-peer-deps
npm run dev # http://localhost:5173Deploying SysNDD? Operator setup, secrets, backups, migrations, and release runbooks live in the Deployment guide — not here.
cd app && npm run test:unit # frontend unit tests (Vitest)
make test-api # R API tests (testthat)
make pre-commit # fast pre-push gate
make ci-local # closest local mirror of CIThe frontend suite is 2,129 Vitest tests at ~59% line coverage
(cd app && npm run test:coverage); the R API is covered by testthat. Continuous
integration runs lint, type-check, unit tests, the R API gate, a bundle-budget check,
and a production smoke test — see .github/workflows/ci.yml.
Contribution and coding conventions are in CONTRIBUTING.md and the
shared agent instructions in AGENTS.md.
The full documentation is published at berntpopp.github.io/sysndd:
- Introduction
- Web tool guide
- API
- Database structure
- Curation criteria
- Development · Deployment
- Tutorial videos
To help curate entries, register for a reviewer/curator
account. Ask questions, report bugs, and
discuss SysNDD in GitHub Discussions.
For technical problems or data requests, contact us at support [at] sysndd.org.
- Bernt Popp (SysNDD) — ORCID · GitHub · web
- Christiane Zweier (SysID, SysNDD) — ORCID
- Annette Schenck (SysID) — ORCID · lab
- Melek Firat Altay (SysNDD) — ORCID · GitHub
Support and funding
SysNDD development is supported by:
- DFG (Deutsche Forschungsgemeinschaft) grant PO2366/2-1 to Bernt Popp.
- DFG grant ZW184/6-1 to Christiane Zweier.
- ITHACA ERN, through Alain Verloes.
The previous SysID database and data curation was supported by:
- The European Union's FP7 large-scale integrated network GenCoDys (HEALTH-241995), Martijn A. Huynen and Annette Schenck.
- VIDI and TOP grants (917-96-346, 912-12-109) from the Netherlands Organisation for Scientific Research (NWO) to Annette Schenck.
- DFG grants ZW184/1-1 and -2 to Christiane Zweier.
- The IZKF (Interdisziplinäres Zentrum für Klinische Forschung) Erlangen to Christiane Zweier.
- ZonMw grant (NWO, 907-00-365) to Tjitske Kleefstra.
Credits and acknowledgements
We acknowledge Martijn Huynen and members of the Huynen and Schenck groups at the Radboud University Medical Center Nijmegen, The Netherlands, for building SysID and supporting it for many years, and all past users of SysID for their constructive feedback. Alain Verloes and ERN ITHACA provide valuable encouragement and support by initiating and supporting the data integration with Orphanet and helping recruit expert curators.
- Code — MIT No Attribution (MIT-0).
- Data, website, and API usage — Creative Commons Attribution 4.0 International (CC BY 4.0).