Skip to content

Angular.JS based UI application that is used by Clinicians and Patient care providers.

License

Notifications You must be signed in to change notification settings

swatigogia2020/openmrs-module-bahmniapps

 
 

Repository files navigation

Bahmni Apps

Build Status

  1. This repository contains most of the frontend code for the Bahmni EMR. It is written in AngularJS with only the Form viewer part utilising React.
  2. See the sub-folder: ui/app/ to understand which all modules of the EMR UI are contained in this codebase.
  3. Regarding the decision of migrating away from AngularJS and instead use React, please read this blog writeup: Bahmni EMR - 1 M lines of code
  4. This code needs help in migrating to React. If you are interested in helping, please ping the Bahmni team on Slack (#community channel).
  5. All Epics, Stories, Bugs, etc are tracked in JIRA.
  6. To Run Bahmni locally you will need a Vagrant setup. See this documentation.

Build

  1. This build requires Node, npm, yarn, grunt and compass.
  2. You can see the travis-ci build to understand the build commands that get executed.
  3. You can also see the go-cd build Bahmni_MRS_v0_93 pipeline to see in-depth build steps.

One time installation:

These steps need to performed ONLY the FIRST TIME you set up this code.

  1. Install node/npm (node version: 10.11.0). Preferably use nvm, so that you have control over which project uses which version of node. See:
  2. Install Yarn: npm install -g yarn
  3. Install Grunt: npm install -g grunt-cli
  4. Install Compass:
    • Compass compiles SASS/SCSS into CSS.
    • Requires ruby (It's recommended to install ruby also using rvm. See install rvm with ruby).
    • Ruby version: 2.6.6
    • Once ruby is installed, you can install compass using: gem install compass

Build commands

Run these commands from within the ui sub-folder.

  1. yarn install
  2. yarn ci (will internally trigger grunt)
  3. If build is successful, the dist folder has the set of files to be deployed in Apache (or in Vagrant).

Vagrant (Hot Deploy)

  1. You can also sym-link the /var/www/bahmniapps folder in Vagrant to {CODE_DIR}/ui/app/ folder so that JS changes are reflected immediately.

Debugging AngularJS App

  1. To be able to debug Bahmni frontend please read this post: Debugging AngularJS
  2. If you are brand new to AngularJS, this is a good intro video: Youtube: 60 min overview of AngularJS Fundamentals

About

Angular.JS based UI application that is used by Clinicians and Patient care providers.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 79.3%
  • HTML 12.9%
  • SCSS 7.7%
  • Other 0.1%