4.3 KiB
Configuration
This step assumes you have an imaging archive. If you need assistance setting one up, check out the
Data SourceGuide or a deployment recipe that contains an open source Image Archive
Overview
Configuration Files
The configuration for our viewer is in the <root>platform/viewer/public/config
directory. Our build process knows which configuration file to use based on the
APP_CONFIG environment variable. By default, its value is
config/default.js. The majority of the viewer's features,
and registered extension's features, are configured using this file.
Embedded Use Note:
Alternatively, when using the commonjs bundle for embedded use cases, these
same values are what you'll pass to installViewer method:
OHIFStandaloneViewer.installViewer(window.config)
Environment Variables
We use environment variables at build and dev time to change the Viewer's
behavior. We can update the HTML_TEMPLATE to easily change which extensions
are registered, and specify a different APP_CONFIG to connect to an
alternative data source (or even specify different default hotkeys).
| Environment Variable | Description | Default |
|---|---|---|
HTML_TEMPLATE |
Which HTML template to use as our web app's entry point. Specific to PWA builds. | index.html |
PUBLIC_URL |
The route relative to the host that the app will be served from. Specific to PWA builds. | / |
APP_CONFIG |
Which [configuration file][config-file] to copy to output as app-config.js |
config/default.js |
PROXY_TARGET |
When developing, proxy requests that match this pattern to PROXY_DOMAIN |
undefined |
PROXY_DOMAIN |
When developing, proxy requests from PROXY_TARGET to PROXY_DOMAIN |
undefined |
Registering Extensions
:warn: Instructions coming soon
How do I configure my project?
The simplest way is to update the existing default config:
/platform/viewer/public/config/default.js
window.config = {
routerBasename: '/',
servers: {
dicomWeb: [
{
name: 'DCM4CHEE',
wadoUriRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/wado',
qidoRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs',
wadoRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs',
qidoSupportsIncludeField: true,
imageRendering: 'wadors',
thumbnailRendering: 'wadors',
requestOptions: {
requestFromBrowser: true,
},
},
],
},
};
You can also create a new config file and specify its path relative to the build
output's root by setting the APP_CONFIG environment variable. You can set the
value of this environment variable a few different ways:
- ~Add a temporary environment variable in your shell~
- Previous
react-scriptsfunctionality that we need to duplicate withdotenv-webpack
- Previous
- ~Add environment specific variables in
.envfile(s)~- Previous
react-scriptsfunctionality that we need to duplicate withdotenv-webpack
- Previous
- Using the
cross-envpackage in an npm script:"build": "cross-env APP_CONFIG=config/my-config.js react-scripts build"
After updating the configuration, yarn run build to generate updated build
output.