The official .NET SDK for working with HL7 FHIR, providing models, parsers, a REST client, validation, and FhirPath evaluation.
Firely .NET SDK is an official software development kit for the .NET platform that provides tools to work with HL7 FHIR, a standard for exchanging healthcare information electronically. It solves the problem of integrating .NET applications with FHIR-based systems by offering data models, parsers, a REST client, and validation capabilities. The SDK supports multiple FHIR specification versions, enabling developers to build interoperable healthcare solutions.
.NET developers and software engineers building healthcare applications, medical software, or systems that need to exchange data with FHIR-compliant servers. It is also suitable for organizations implementing FHIR interfaces in .NET environments.
Developers choose this SDK because it is the official, well-supported toolkit for FHIR on .NET, offering comprehensive features like FhirPath evaluation and multi-version support. Its active maintenance, commercial support options, and compatibility with FHIR specification updates provide reliability for production healthcare systems.
The official Firely .NET SDK for HL7 FHIR
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides POCO classes, XML/JSON parsers, REST client, validation, and FhirPath evaluation—covering all essential FHIR operations for .NET developers.
Fully supports STU3, R4, R4B, and R5 specifications, allowing targeting of different FHIR releases as needed, with dedicated NuGet packages for each.
Issues are monitored on GitHub, with a Zulip chat for discussions, and optional commercial support from Firely for production environments.
Uses POCO classes for the FHIR data model, enabling compile-time safety and easier manipulation in .NET code, reducing runtime errors.
Major SDK releases come with breaking changes about once a year, requiring code updates and potentially disrupting long-term projects, as noted in the release notes.
Using pre-release NuGet packages requires adding a GitHub source and managing personal access tokens, adding overhead for early adopters.
The profile validator has been moved to a separate repository, complicating setup and maintenance for validation features, as mentioned in the upgrading section.