This is the main repository for the Chap modelling platform.
Read more about the Chap project here
The main documentation for the modelling platform is located at https://chap.dhis2.org/chap-modeling-platform/.
Information about how to contribute to the Chap Modelling Platform: https://chap.dhis2.org/chap-modeling-platform/contributor/.
If you find any bugs or issues when using this code base, we appreciate it if you file a bug report here: https://github.com/dhis2-chap/chap-core/issues/new
cp .env.example .env
docker compose up
docker compose up will reuse an existing chap-core-chap image if one is
already built — it does not automatically rebuild when you edit source. If
you see a stale chap_core.__version__ or a fix that clearly didn’t land
inside the running container, use one of:
make restart # down && up -d --build (preserves volumes incl. chap-db)
make force-restart # down -v && build --no-cache && up (WIPES VOLUMES)
make chap-version # print the chap_core version running inside the container
make restart is the right hammer 90% of the time. make force-restart
also wipes the Postgres volume, so reach for it only when you need a clean
slate. make chap-version is also printed automatically at the end of
make restart so version drift is visible at a glance.
Chapkit-based models ship as opt-in compose overlays. Layer one onto
compose.yml (not compose.ghcr.yml — those two are alternatives, not
stackable) to run chap-core with the chapkit services already
self-registered.
The recommended overlay is compose.chapkit.yml, an umbrella file that
includes every chapkit-converted model. As more models are converted to
chapkit, they get added here so a single -f flag pulls them all in:
docker compose -f compose.yml -f compose.chapkit.yml up -d
If you only want the EWARS service, use the single-model overlay
compose.ewars.yml instead:
docker compose -f compose.yml -f compose.ewars.yml up -d