OCL TermBrowser v2, an open-source ReactJS-based web client for terminology management
- docker-compose up -d
- Visit http://localhost:4000
- docker-compose -f docker-compose.yml -f docker-compose.sso.yml up -d
- Visit http://localhost:4000
- docker-compose -f docker-compose.yml up -d
- Visit http://localhost:4000
To show a banner above the app, for example for planned maintenance, set the optional ANNOUNCEMENT environment variable to JSON:
{
"id": "maintenance-2026-11",
"text": {"en": "Planned maintenance on Saturday, 02:00-04:00 UTC.", "es": "Mantenimiento programado el sábado, de 02:00 a 04:00 UTC."},
"links": [{"label": {"en": "Details", "es": "Detalles"}, "url": "https://status.example.org/"}],
"until": "2026-11-09T00:00:00Z"
}id: dismissing the banner hides it in that browser untilidchanges.textand each link'slabel: plain text for each language code (en,es,zh).enis required, and shows for any language that has no entry.links:https:URLs, shown after the text. Use[]for none.until(optional): an ISO 8601 time withZor an offset, such as2026-11-09T00:00:00Z. The banner stops showing after it, without a restart.
start-prod.sh writes the setting into env-config.js when the container starts, so a change shows after a restart. When it's unset, or isn't valid (bad JSON, a missing field, a link that isn't https:), no banner shows. With npm start, put var ANNOUNCEMENT = <the JSON as a JavaScript string>; in public/env-config.js instead (node -p 'JSON.stringify(process.argv[1])' '<the JSON>' prints one), and don't commit it.
docker exec -it <container_name> bash -c "eslint src/ --ext=.js*"
Every build is a candidate for release.
In order to release please trigger the release build step in our CI. Please note that the maintenance version will be automatically increased after a successful release. It is desired only, if you are releasing the latest build and should be turned off by setting the increaseMaintenanceRelease variable to false on the Run stage "Release" popup in other cases.
A deployment release will be automatically created and pushed to the staging environment.
In order to increase major/minor version you need to set the new version in package.json. Alongside you need to login to our CI and update the next release version on a deployment plan here with the same value.
In order to deploy please trigger the deployment here. Please use an existing deployment release.
This repository is part of the OCL Digital Public Good. It is licensed under the Mozilla Public License 2.0 with the OCL Healthcare Disclaimer.