Provides apps for performing the common tasks
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.tx
api-2.2
api-pre2.2
api
omod
web-1.9
web-2.0
.gitignore
.travis.yml
README.md
karma.conf.js
npm-shrinkwrap.json
package.json
pom.xml
webpack.config.js

README.md

Build Status Codacy Badge dependencies Status devDependencies Status

OpenMRS Core Apps Module

Provides apps for performing the common tasks

Dashboard widgets development

The widgets are built as part of the module (mvn clean install) without having to install Node or NPM manually. Nevertheless, if you want to develop widgets installing Node is recommended so that you can iterate faster by building widgets and executing tests continously.

You need to have Node 6.x installed. We recommend using nvm or nvm-windows to install Node.

The code is at omod/src/main/web

The generated code is at omod/target/classes/web/module/resources/scripts/web

Installing dependencies: npm install --no-optional (once after code checkout or when dependencies change)

Development build: npm run build:dev

Continuous development build: npm run watch (whenever you make a change, a new UI build will be triggered)

Continuous test execution: npm run test:dev (in PhantomJS), npm run test:dev-chrome (in Chrome), npm run test:dev-firefox (in Firefox) (whenever you make a change, tests will be run again)

Clean development build: npm run clean && npm run build:dev

Production build: npm run build

For continous development we recommend setting up a server using OpenMRS SDK and adding the coreapps module to watched projects (requires UI Framework 3.12.0+). Next start the server and use the npm run watch command to have js code instantly transpiled and deployed to the server. Do remember to disable caching for your browser or use Ctrl + F5 to refresh page and its cache to see changes.

Linking

Linking is a feature of npm, which allows you to modify a library and test modifications in your project.

  1. Clone https://github.com/openmrs/openmrs-web-angularjs-api
  2. Run npm link and npm run build from the lib directory
  3. Run npm link @openmrs/angularjs-openmrs-api from the coreapps project directory.
  4. Build the coreapps project.

In order to unlink do:

  1. Run npm unlink @openmrs/angularjs-openmrs-api and npm install from the coreapps project directory.
  2. Build the coreapps project.