finds.dev← search

// the find

google/simhospital

★ 726 · Go · Apache-2.0 · updated Mar 2024

A Go tool for generating synthetic HL7v2 hospital message streams, useful for testing EHR integrations without real patient data. You define patient pathways in YAML — admission, labs, discharge — and it emits correctly-formatted HL7v2 over MLLP or to files. Aimed squarely at healthcare software developers who need realistic test data.

The pathway model is well thought out: YAML-defined clinical sequences with probabilistic distribution control means you can simulate realistic ward load, not just happy-path flows. Multiple HL7v2 schema versions (2.1 through 2.8.2) are included as generated Go structs, so you're not hand-rolling segment parsing. The HL7-to-FHIR conversion layer in pkg/hl7tofhirmap is a genuine bonus — most similar tools stop at HL7v2. Test coverage is thorough across the clinical domain packages, and the Bazel build is well-structured for a monorepo.

Last meaningful commit was March 2024 and activity before that was already sparse — this is essentially in maintenance mode, which matters in a standards space that keeps moving. The FHIR output is partial; it covers common mappings but edge cases in real-world HL7v2 messages (non-standard Z-segments, encoding variations) will break the converter and there's no clear extension point. Demographics data is UK-centric (London ethnicity codes, NHS identifiers) — teams outside the UK will need to swap out the config CSVs, which isn't documented. No support for HL7v3 or FHIR-native input, so if your system is already on FHIR R4, this tool is only useful for legacy integration testing.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →