Getting Started

Recommended: Pre-Built Images

The easiest way for developers to get started running the entire SHARES technology stack is with pre-built images configured through HL7 FHIR Foundry and run via Docker.

  • Log in with a free HL7 account.
  • Go to the “Account” page and create a new platform definition.
  • Go to the “Catalog” and search for “SHARES”. Add the default configuration to your platform definition.
  • Go to “Environments” and click the “Docker Compose” button to download a generated docker-compose.yml file.
  • Install and run Docker Desktop if not already available.

Run the following at the command line:

docker compose -f docker-compose.yml up --pull always --remove-orphans

Once the stack spins up, open http://localhost:4203 to access the “stack controller” and use the controls to load the sequence of SHARES synthetic data bundles. Then follow the links in the UI to access the various other provided applications.

Making Isolated Changes

If you’re working on an specific area of SHARES, such as those limited to a single application, service, or library, we recommend the following approach.

  • Continuing using the docker compose ... method for running the majority of the stack, but comment out the portions of docker-compose.yml corresponding to the service(s) you would like to work on. If you’re not familiar with docker compose subcommands, see the official overview:
  • Use the Software Catalog to find the source code repository of interest, and clone it locally with git clone ...
  • Start the application or service using the same exposed port number(s) and environment variables as declared in the generated docker-compose.yml. All SHARES npm-based software will follow the same general startup command format of: SOME_ENVIRONMENT_VARIABLE="true" ANOTHER_ONE="something_else" npm run start (See the project’s README for specific instructions.)

By using the preconfigured stack to provide components you’re not actively working on, you’ll save the time compared to running every component manually.

Contributing Changes

The entire SHARES stack is licensed under the Apache 2.0 Open Source license. The easiest way to contribute changes is to fork a GitHub project repository from the Software Catalog, make and test your changes, then submit a pull request (PR) to the upstream SHARES project. We love your contributions!

SHARES-wide technology issues are tracked on the GitHub issue track for the asushares/stack project:


Informal chat on SHARES technology in within the “#SHARES” channel on the HL7 FHIR Zulip server, here:

Oh hi there 👋
It’s nice to meet you.

Sign up to receive occasional email updates.

We don’t spam! Read our privacy policy for more info.