/MHFR

Master Health Facility Registry

Primary LanguageJavaScript

Master Health Facility Register

At its very core, the MFL is a comprehensive database of all the Health Facilities in the country (Malawi). From Private Hospitals to Village Clinics, the system keeps track of resources, utilities and services available in each one of these facilities just to mention a few.

This project is the first deliverable under the Kuunika Data For Action Initiative and aims at serving the general users, District Health Officers and any other stakeholders in the Malawi Healthcare Sector. Additionally, the facilities and their information will be available via a REST API for other services and systems to consume, such as Baoabab Health Trust Electronic Management Record Systems (EMRs) or the District Health Information System (DHIS).

Dependancies

Setup

The project is generated by LoopBack, a rapid API development framework. For more information, see the Loopback documentation. There is a client directory that has a create-react-app setup from which the User Interface will be built. The idea is to build static files from create-react-app into the client folder so that the API and front-end can run on the same node server.

Installation

Checkout Docker Installation

Contribution

Once you have followed the installation step, you are ready to contribute to the source code. When working on the API, you will mostly use the Loopback Model Generator, as well as make changes to files in common/models.  When working on the Front-end, you will be modifying files in client. Make sure to add tests for every generated model, covering the major enpoints and relationships that will be hit via the API. From the root, running npm start will start the API on port 3000. Tests are not mandatory for the React Project, but highly encouraged.

Reporting Issues

If you have noticed a bug, you can open an issue in github web and attempt to fix (see below), otherwise we will do our best to look at it.

Fixing Issues

From the issue list, you can select an issue, and create a branch in your local directory describing the issue you are fixing. Once the issue is fixed and all the tests are running, you can publish your local branch to the repository. From there, you may open a pull request describing how you have solved the issue. Remember to explicity say which issue number it solves, i.e. "solves issue #41" so that the issue is automatically closed upon merge

Adding Features

If you have any features to add, please follow the instructions in the previous step to create a new feature branch and publish it to the remote repository upon completion of the feature. Every additional feature on the backend must have tests to go along with it.

Enjoy, and feel free to contact bmwalwanda@kuunika.org