Open-source · communicable disease control demo.sentinelsurveillance.app

Surveillance software that answers to the epidemiologist.

An open-source platform for communicable disease surveillance, outbreak management, and contact tracing.

demo.sentinelsurveillance.app
Sentinel dashboard: patient search, outbreaks and task queue

The grievance

Our surveillance systems were not ready for what was asked of them, and they failed us.
Christian Peut · On counting COVID-19 cases from faxed lab results, on the floor of the surveillance office

When adding one question to a questionnaire takes a help-desk ticket and a staff retraining session, the system cannot keep pace with an outbreak. Sentinel was built to address this: surveillance staff configure the system themselves as requirements change.

Design principles

Two ideas, held firmly.

01 · Epidemiologist-first

The surveillance team configures the system, not the developers.

The epidemiologist or surveillance manager controls the system, rather than whoever maintains the code. Adding a question to a salmonella questionnaire, for example whether a case ate bean sprouts, does not require a developer.

Geographies, demographics, diseases, case definitions, surveys and reports are all configurable through the interface, with no code change and no schema migration.

02 · Simplicity

Scaling to a hundred contact tracers overnight leaves no time to retrain.

The design target is the end user in a large operation. A changed field or a relabelled question does not require a training session: the contact tracer clicks next, and the new question is already there.

The system accommodates the user, rather than the reverse.

The platform

Quiet when it can be. Loud when it counts.

Case intake, investigation, isolation and contact tracing in one place.

demo.sentinelsurveillance.org / dashboard
Sentinel dashboard: quick patient search, recently viewed records, your outbreaks and your task queue

Workbench Patient search, your outbreaks and your task queue, shown at sign-in

/ case · C-2026-0389
Sentinel case detail for an Influenza B case, with case information and lab results

Investigation Labs, classification, exposures and tasks for a single case

/ case-definitions / build
Sentinel case definition builder defining machine-readable criteria for Influenza A, no code

Case definitions Machine-readable criteria, built by the epidemiologist without code

/ supervise-interviews
Sentinel interview supervisor dashboard showing worker performance and assigned interview tasks

Contact tracing Team supervision: assignments, call attempts and progress

/ data-inbox
Sentinel data review inbox with items from surveys and lab feeds awaiting human review

Data governance Data can be staged, committed or flagged for review depending on needs

Under the hood

More than a form builder.

Sentinel's core data structures are patients, cases, contacts and outbreaks. Everything around them is configured by the user. Four components handle most of the intake and investigation work.

01 · Lab integration

HL7 lab feeds

Picks up HL7 messages from a file drop, matches them to the right patient using strategies you configure, and parses results with LOINC and SNOMED. You choose how data from a HL7 message is entered. Data enters automatically - only if you say so.

HL7LOINCSNOMEDAuto-match
02 · Classification

Automated case definitions

Machine-readable case definitions are evaluated in the background against labs, symptoms and exposures. The epidemiologist decides whether they apply automatically, flag for review, or stay manual. Each evaluation keeps a full history and can be overridden.

Background evalOverrideAudit trail
03 · Surveys

Surveys & data mapping

Surveys carry conditional logic and versioning. Responses map into case and patient records: trusted fields save automatically, ambiguous ones queue for review. A new question reaches every tracer without a code change.

Conditional logicVersioningNarrative entry
04 · Outbreaks

Outbreaks & contact tracing

Hierarchical outbreaks, interview queues, supervisor dashboards, bulk contact import, contact-to-case conversion, and a mind-map view of relationships.

HierarchiesInterview queueRelationship map

Open source

You can download and run it yourself.

The code is public and free to use, share and modify. Sentinel is in active development and open to contributors. The repository and a live demo are linked below.

Questions, or want to get involved? [email protected]

C# .NET built in a Microsoft framework Open publicly accessible code Beta core platform in beta

Pip · the watcher