// the find
FirelyTeam/spark
Firely and Incendi's open source FHIR server
Spark is a C# FHIR server implementing the HL7 FHIR specification, supporting R4 and STU3 versions with MongoDB as its storage backend. It's aimed at health IT developers who need a reference FHIR server for testing, connectathons, or building health data pipelines. Firely started it; Incendi now maintains it.
1. Solid FHIR spec coverage for R4 and STU3, battle-tested at HL7 Connectathons — not a toy implementation. 2. NuGet-first design lets you embed a FHIR server into your own ASP.NET Core app rather than running a separate process, which is genuinely useful for integration testing. 3. Docker setup is straightforward and the public endpoints (spark.incendi.no) let you verify behavior against a live instance before trusting your own deployment. 4. Architecture decisions are documented in ADRs, which is rare for a project this size and saves hours of archaeology when you hit a surprising behavior.
1. MongoDB-only storage is a hard constraint — there's no SQL backend, so if your stack is Postgres or SQL Server, you're either wrapping this or looking elsewhere. 2. Search implementation is incomplete in ways that will surprise you in production; FHIR search is notoriously complex and partial support can cause silent correctness issues rather than clean errors. 3. SMART on FHIR (the standard auth layer for health apps) is present but documented only in an ADR, not in the quickstart — you'll figure it out, but it's not a guided path. 4. 278 stars and a single maintenance org (Incendi) means bus factor is real; activity exists but the contributor pool is thin for something you'd run in a healthcare production environment.