@nmrsbootcamp/esm-template-app
v1.0.0
Published
An OpenMRS seed application for building microfrontends
Downloads
1
Maintainers
Readme
OpenMRS ESM Template App
This repository provides a starting point for creating your own OpenMRS Microfrontend.
For more information, please see the OpenMRS Frontend Developer Documentation.
In particular, the Setup section can help you get started developing microfrontends in general. The Creating a microfrontend section provides information about how to use this repository to create your own microfrontend.
Running this code
yarn # to install dependencies
yarn start # to run the dev server
Once it is running, a browser window
should open with the OpenMRS 3 application. Log in and then navigate to /openmrs/spa/root
.
Adapting the code
- Start by finding and replacing all instances of "template" with the name of your microfrontend.
- Update
index.ts
as appropriate, at least changing the feature name and the page name and route. - Rename the
root.*
family of files to have the name of your first page. - Delete the contents of the objects in
config-schema
. Start filling them back in once you have a clear idea what will need to be configured. - Delete the
greeter
andpatient-getter
directories, and the contents ofroot.component.tsx
. - Delete the contents of
translations/en.json
. - Open up
.github/workflows
and adapt it to your needs. If you're writing a microfrontend that will be managed by the community, you might be able to just replace all instances oftemplate
with your microfrontend's name. However, if you're writing a microfrontend for a specific organization or implementation, you will probably need to configure GitHub Actions differently. - Delete the contents of this README and write a short explanation of what you intend to build. Links to planning or design documents can be very helpful.
At this point, you should be able to write your first page as a React application.
Check out the Medication dispensing app for an example of a non-trivial app built using the Template.
Integrating it into your application
Please see Creating a Frontend Module.