Built by a dentist, for dental practices. You don't need to be a DICOM expert to contribute — good ideas, bug reports, and documentation improvements are just as valuable as code.
- Bug fixes — Anything in Issues with the
buglabel - Features — Check Issues for open feature requests first
- Documentation — Setup guides, troubleshooting tips, usage examples
- Dental presets — New Window/Level presets for specific imaging modalities (CBCT, DVT, OPG)
- Translations — UI strings or documentation in other languages
New to the project? Look for issues labeled good-first-issue.
These are scoped, well-described tasks with no hidden complexity. If you get stuck, comment on the issue — we'll help.
-
Fork and clone
git clone https://github.com/<your-username>/AmbientCT.git cd AmbientCT
-
Create your
.envcp .env.example .env
-
Set a strong password — edit
.envand changeORTHANC_PASSWORDto something secure, or let the setup wizard generate one automatically:./scripts/setup.sh
-
Start the stack
docker compose up -d
-
Open the viewer at http://localhost:3000
The stack takes ~30 seconds to become healthy. Run docker compose logs -f to watch startup.
Branch naming:
Ambientwork/short-description
Examples: Ambientwork/fix-ohif-config, Ambientwork/add-mri-preset
Commit messages follow Conventional Commits:
| Prefix | When |
|---|---|
feat: |
New feature |
fix: |
Bug fix |
docs: |
Documentation only |
chore: |
Tooling, deps, CI |
refactor: |
No behavior change |
-
./scripts/smoke-test.shpasses locally - No
.dcm,.env, or patient data files in the diff - No log snippets containing patient names, IDs, or dates of birth
-
docs/updated if behavior changed
Never include patient data in any form.
This means: no DICOM image files, no log snippets with patient names/IDs/dates of birth, no screenshots with PHI (Protected Health Information), no filenames derived from patient names.
This is a legal requirement under DSGVO (EU) / GDPR. Any PR containing patient data will be closed immediately and the data reported for removal from git history.
If your logs contain patient data, scrub them first:
python3 scripts/scrub.py your-logfile.txtBe kind. This project is used in healthcare settings. Treat other contributors with the same care you'd want shown to patients.
By Ambientwork — the better OS for dental practices.
MIT License · Made with AI and coffee.