IHTSDO / snowstorm-lite

Snowstorm Lite FHIR Terminology Server
Other
12 stars 2 forks source link
fhir-server fhir-terminology snomed snomed-api snomed-ct snomed-ecl

Snowstorm Lite FHIR Terminology Server (Beta)

A fast FHIR Terminology Server for SNOMED CT with a small memory footprint.

Use Case

Features

Limitations

Technical Details

Quick Start

Choose an admin password and replace yourAdminPassword values in the following commands.

Option 1: Using a SNOMED Syndication Service

If you have access to the SNOMED International MLDS service then Snowstorm Lite can download a release automatically from there.

Run Snowstorm Lite in your local Docker:

docker pull snomedinternational/snowstorm-lite:latest
docker run -i -t -p 8080:8080 snomedinternational/snowstorm-lite \
  --admin.password=yourAdminPassword \
  --syndicate --version-uri=http://snomed.info/sct/900000000000207008

Set version-uri to the URI of the SNOMED Edition to be loaded. See SNOMED Edition URI Examples.

The console will ask for the syndication service username and password before downloading the relevant packages and building the index. By default the SNOMED International MLDS feed is used, this uses the same credentials as MLDS. The feel URL can be changed using the syndication.url configuration option.

Then Snowstorm Lite will be ready for use! The FHIR interface is here: http://localhost:8080/fhir.

Option 2: Using a SNOMED Archive File

If you have access to a SNOMED CT Edition release archive this can be imported.

Run Snowstorm Lite in your local Docker:

docker pull snomedinternational/snowstorm-lite:latest
docker run -p 8080:8080 snomedinternational/snowstorm-lite \
  --admin.password=yourAdminPassword

Upload a SNOMED CT package:

curl -u admin:yourAdminPassword \
  --form file=@SnomedCT_InternationalRF2_PRODUCTION_20240101T120000Z.zip \
  --form version-uri="http://snomed.info/sct/900000000000207008/version/20240101" \
  http://localhost:8080/fhir-admin/load-package

Importing a SNOMED CT release takes about 5 minutes.

When the import is complete Snowstorm Lite will be ready for use! The FHIR interface is here: http://localhost:8085/fhir.

It is possible to import extension or derivative packages.

It is also possible to deploy as a Java application, without Docker.

Postman

This Postman collection allows you to try the various API functions of the Snowstorm Lite server. It's similar to a Swagger UI.
You will need a local Snowstorm Lite instance running.

Run in Postman

Roadmap

Full ECL support is not planned. Snowstorm Lite supports the most often used ECL features without the full complexity and memory demands of the complete ECL specification.