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 withdocker compose
subcommands, see the official overview: https://docs.docker.com/compose/ - 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: https://github.com/asushares/stack/issues
Chat
Informal chat on SHARES technology in within the “#SHARES” channel on the HL7 FHIR Zulip server, here: https://chat.fhir.org/#narrow/stream/436335-SHARES/topic/General