fhir-candle
2023.910.2104
See the version list below for details.
dotnet tool install --global fhir-candle --version 2023.910.2104
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local fhir-candle --version 2023.910.2104
#tool dotnet:?package=fhir-candle&version=2023.910.2104
nuke :add-package fhir-candle --version 2023.910.2104
fhir-candle
When you need a small FHIR.
fhir-candle is a small in-memory FHIR server that can be used for testing and development. It is NOT intended to be used for production workloads.
Documentation
Get Started
Install .NET 7 or newer and run this command:
dotnet tool install --global fhir-candle
Note that this software is still under heavy development.
Start a FHIR server and open the browser by running:
fhir-candle -o
Cloning this repository
To run the default server from the command line:
dotnet run --project src/fhir-candle/fhir-candle.csproj
To pass arguments when using dotnet run
, add an extra --
. For example, to see help:
dotnet run --project src/fhir-candle/fhir-candle.csproj -- --help
To build a release version of the project:
dotnet build src/fhir-candle/fhir-candle.csproj -c Release
The output of the release build can be run (from the root directory of the repo)
- on all platforms:
dotnet ./src/fhir-candle/bin/Release/net7.0/fhir-candle.dll
- if you built on Windows:
.\src\fhir-candle\bin\Release\net7.0\fhir-candle.exe
- if you built on Linux or MacOs:
./src/fhir-candle/bin/Release/net7.0/fhir-candle
FHIR Tenants
By default, this software loads three FHIR 'tenants':
- a FHIR R4 endpoint at
/r4
, - a FHIR R4B endpoint at
/r4b
, and - a FHIR R5 endpoint at
/r5
.
The tenants can be controlled by command line arguments - note that manually specifying any tenants
overrides the default configuration and will only load the ones specified. To load only an R4
endpoint at 'fhir', the arguments would include --r4 fhir
. You can specify multiple tenants for
the same version, for example --r5 fhir --r5 also-fhir
will create two endpoints.
Loading Initial Data
The server will load initial data specified by the --fhir-source
argument. If the path specified
is a relative path, the software will look for the directory starting at the current running path.
If the system is loading multiple tenants, it will check the path for additional directories based
on the tenant names. For example, a path like data
passed into the default server will look for
data/r4
, data/r4b
, and data/r5
. If tenant directories are not found, all tenants will try to
load resources from the specified path.
Subscriptions Reference Implementation
This project also contains the reference stack for FHIR Subscriptions. To use the default landing page of the subscriptions RI, the following command can be used:
fhir-candle --reference-implementation subscriptions --load-package hl7.fhir.uv.subscriptions-backport#1.1.0 --load-examples false --protect-source true -m 1000
To-Do
Note: items are unsorted within their priorities
High priority
- Composite search parameter support
- Reverse chaining (
_has
) - Feature/module definitions for selective loading Build interfaces for Hosted Services, etc. Add module tag to Operation, etc. Conditional loading based on discovery within types
- Persistent 'unsubscribe' list
- Finish search evaluators (remaining modifier combinations)
- Save/restore points
- Versioned Resource support
- Resource display / edit in UI
- Subscription RI scenario/walkthrough
- Resource editor design improvements
- Add loading packages/profiles to CapabilityStatement
Mid Priority
- SMART support
- Transaction support
- Proxy header support
- Conditional interaction support (e.g.,
conditional-update
,if-match
) - OpenAPI generation
- Compartments
- Contained resources
- Subscription websocket support
The long tail
- Non-terminology validation
- Link to terminology server for full validation
_filter
support- Runtime named queries
- GraphQL support
More Information
Contributing
There are many ways to contribute:
- Submit bugs and help us verify fixes as they are checked in.
- Review the source code changes.
- Engage with users and developers on Official FHIR Zulip
- Contribute bug fixes.
See Contributing for more information.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
FHIR® is the registered trademark of HL7 and is used with the permission of HL7.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
This package has no dependencies.
Version | Downloads | Last updated |
---|---|---|
2024.530.2132 | 158 | 5/30/2024 |
2024.519.2147 | 141 | 5/19/2024 |
2024.519.2142 | 127 | 5/19/2024 |
2024.519.2045 | 144 | 5/19/2024 |
2024.328.2125 | 173 | 3/28/2024 |
2024.328.1751 | 193 | 3/28/2024 |
2024.125.1954 | 181 | 1/25/2024 |
2024.118.1940 | 149 | 1/18/2024 |
2024.118.1926 | 131 | 1/18/2024 |
2024.117.155 | 125 | 1/17/2024 |
2024.116.2310 | 154 | 1/16/2024 |
2024.116.2215 | 117 | 1/16/2024 |
2024.116.2208 | 153 | 1/16/2024 |
2024.116.2107 | 127 | 1/16/2024 |
2024.116.1647 | 143 | 1/16/2024 |
2024.116.1449 | 126 | 1/16/2024 |
2024.110.2157 | 187 | 1/10/2024 |
2024.110.2148 | 191 | 1/10/2024 |
2024.110.2136 | 158 | 1/10/2024 |
2024.110.2130 | 167 | 1/10/2024 |
2024.110.2117 | 172 | 1/10/2024 |
2024.110.2054 | 144 | 1/10/2024 |
2023.1116.2344 | 320 | 11/16/2023 |
2023.1115.1740 | 199 | 11/15/2023 |
2023.1115.1729 | 210 | 11/15/2023 |
2023.1113.2335 | 223 | 11/13/2023 |
2023.1113.1816 | 204 | 11/13/2023 |
2023.1110.2223 | 156 | 11/10/2023 |
2023.1109.2234 | 143 | 11/9/2023 |
2023.1109.2019 | 168 | 11/9/2023 |
2023.1109.1528 | 195 | 11/9/2023 |
2023.1109.1525 | 136 | 11/9/2023 |
2023.1108.2311 | 181 | 11/8/2023 |
2023.1108.2242 | 168 | 11/8/2023 |
2023.1108.2209 | 119 | 11/8/2023 |
2023.1108.2158 | 130 | 11/8/2023 |
2023.1108.2156 | 219 | 11/8/2023 |
2023.1108.2111 | 157 | 11/8/2023 |
2023.1108.2101 | 160 | 11/8/2023 |
2023.1108.1909 | 139 | 11/8/2023 |
2023.910.2104 | 295 | 9/10/2023 |
2023.910.1844 | 256 | 9/10/2023 |
2023.910.1836 | 310 | 9/10/2023 |
2023.909.1658 | 179 | 9/9/2023 |
2023.907.2106 | 247 | 9/7/2023 |
2023.906.2248 | 226 | 9/6/2023 |
2023.906.2228 | 268 | 9/6/2023 |
2023.831.1559 | 239 | 8/31/2023 |
2023.830.1814 | 359 | 8/30/2023 |
2023.830.1458 | 277 | 8/30/2023 |
2023.824.2157 | 222 | 8/24/2023 |
2023.815.308 | 275 | 8/15/2023 |
2023.811.2132 | 297 | 8/11/2023 |
2023.811.3 | 300 | 8/11/2023 |
2023.810.1617 | 281 | 8/10/2023 |
2023.810.1554 | 235 | 8/10/2023 |
2023.809.1922 | 294 | 8/9/2023 |
0.0.1-beta.8 | 91 | 6/19/2023 |
0.0.1-beta.7 | 66 | 6/19/2023 |
0.0.1-beta.6 | 75 | 6/4/2023 |
0.0.1-beta.5 | 89 | 6/2/2023 |
0.0.1-beta.4 | 80 | 6/1/2023 |
0.0.1-beta.3 | 82 | 5/31/2023 |