List of Repositories needed for Development on Bahmni
Development
This document lists the various GitHub code repositories that you might need to check out into your PROJECT folder for development on Bahmni (depending on which implementation / sub-project you are working on).
Clone Bahmni Code (Bash Script)
You can use this bash script to clone all the code quickly to your local machine: clone_bahmni_code.sh
Name | GitHub URL | Folder name | Description | Technologies |
|---|---|---|---|---|
|
|
|
|
|
Bahmni EMR Core | ||||
Bahmni UI | openmrs-module-bahmniapps | Angular JS based Bahmni UI. | Angular.JS | |
Bahmni Core | bahmni-core | Core bahmni backend (and Atom feed client for OpenELIS) | Java, Hibernate, REST | |
Utils | bahmni-java-utils | Some common classes needed by bahmni-core | Java | |
Implementer Interface | implementer-interface | A repository for implementer-interfaces like form-builder, reporting, dashboard etc. | ReactJS | |
Bahmni Scripts | bahmni-scripts | Utility scripts used by Bahmni like anonymizing, Branching, Deleting Patient Data..etc. | Shell Scripting | |
Form Controls | form-controls | Repository of reusable custom ReactJS components | ReactJS | |
Bahmni Reports | bahmni-reports | Repository to host the Reports web application for the Bahmni | Java | |
Appointment Scheduling UI | https://github.com/Bahmni/openmrs-module-appointments-frontend | openmrs-module-appointments-frontend | UI for Appointment Scheduling in Bahmni | Anglar.js + React |
Lab Lite | bahmni-lab-frontend | New Lab Module for uploading Patient Lab reports (using O3 design system). | React, Micro-frontends, TypeScript | |
Bahmni Modules |
|
|
|
|
Bacteriology | bacteriology | OpenMRS module for bacteriology - Specimen, Culture, DST and Smear | Java | |
Two Factor Authentication | two-factor-auth | Application to handle two factor authentication in Bahmni | Java | |
Audit Log Service | audit-log | Audit logging of bahmni-core and bahmni-ui | Java | |
Appointment Scheduling | openmrs-module-appointments | Backend for appointment scheduling | Java | |
Fhir2 extension module | openmrs-module-fhir2Extension | Extension module for updating implementation of openmrs fhir2 apis. Currently it has the overridden implementation of DiagnosticReport resource | Java | |
Episodes Module | openmrs-module-episodes | Demonstrates the use of Episodes of Care for OpenMRS. | Java | |
Bahmni QA & Automation |
|
|
|
|
Bahmni Gauge | bahmni-gauge | Bahmni Automation Test Suite | Java, ThoughtWorks Gauge | |
Functional Tests | emr-functional-tests | Functional tests suit for EMR apps | Shell Scripting | |
Performance Tests | performance-test | Performance Test Suite for Bahmni | Scala, Gatling | |
Test Data Generator | bahmni-test-data-generator | Patients and Encounters test data generator for Bahmni | Java, REST | |
Performance Tests (Community Repo) | asha-bahmni-performance | Performance tests written by @Albion Shala (Deactivated) in his personal repo for Bahmni performance testing using JMeter and Blazemeter. These have not been run by Product Team. | JMeter, Blazemeter. | |
Bahmni Connect (Offline App) | ||||
Bahmni Connect | bahmni-offline | Repository of Bahmni Connect code. This supports Android and Chromium apps. | AngularJS | |
Bahmni Connect Sync | bahmni-offline-sync | Bahmni Connect omod for Android and Chrome extension | Java, Shell Scripting | |
Event Log Service | event-log-service | Service which provides data to offline devices | Java | |
|
|
|
|
|
OpenMRS & Modules | ||||
OpenMRS Core | openmrs-core | Core OpenMRS codebase. | Java, Spring, Hibernate, MySQL, REST | |
ID Gen | openmrs-module-idgen | Patient Identifier generation module | Java | |
ID Gen Webservices | https://github.com/Bahmni/openmrs-module-idgen-webservices.git | openmrs-module-idgen-webservices | ID Gen Webservices module | Java |
EMR API | openmrs-module-emrapi | EMR API maintained by OpenMRS community | Java, Spring, REST | |
REST Webservices | https://github.com/openmrs/openmrs-module-webservices.rest.git | openmrs-module-webservices.rest | OpenMRS REST Webservices Module | Java, REST |
Address Hierarchy Module | https://github.com/openmrs/openmrs-module-addresshierarchy.git | openmrs-module-addresshierarchy | Address Hierarchy Module for managing locations and patient address levels | Java |
Operation Theatre | openmrs-module-operationtheater | Operation Theatre backend module (frontend is in bahmniapps) | Java | |
Bed Management Module | openmrs-module-bedmanagement | IPD Bed / Ward Management (frontend is in bahmniapps) | Java | |
|
|
|
|
|
OpenELIS | ||||
OpenELIS | OpenElis | Lab system (OpenELIS). + AtomFeed for Lab. | Java, JSP, Struts, PostGRES | |
|
|
|
|
|
OpenERP / ODOO | ||||
Bahmni OpenERP modules | openerp-modules | Bahmni modules on OpenERP | Python | |
Bahmni ODOO modules | odoo-modules | Bahmni 0.92+ modules on Odoo V10 | Python | |
JSS Custom OpenERP modules | openerp-modules | JSS Specific customisations to OpenERP | Python | |
ATOM Feed | ||||
ICT4H Atom Feed | atomfeed | Main Atom Feed Infrastructure | Java, ATOM | |
OpenERP Atom Feed | openerp-atomfeed-service | Gateway service for OpenERP Atom Feed synchronization | Java, ATOM, REST | |
OpenMRS Atom Feed | openmrs-atomfeed | OpenMRS Atom Feed Synchronization | Java, ATOM, REST | |
Atomfeed console | atomfeed-console | UI to view atomfeed console | Java, Server-Side UI | |
Example Atomfeed for Bahmni | bahmni-feed-integration-example | Example code for Atom Feed Integration with Bahmni, that can be used as a starting point. | Java, Spring, REST, ATOM | |
|
|
|
|
|
PACS / DCM4Chee / Radiology |
|
|
| |
DCM4chee | https://sourceforge.net/projects/dcm4che/files/dcm4che2/2.0.28/ |
| PACS Server (dcm4chee) | Java |
pacs-integration | pacs-integration | ATOM Feed based service that integrates Bahmni/OpenMRS with DCM4chee | Java | |
Bahmni MART / Analytics | ||||
Bahmni Mart | bahmni-mart | Create various tables in analytics DB like Patient Information, Program Enrollment Information, Drug Orders, etc. | Java, Spring Batch | |
Bahmni Mart Playbooks | bahmni-mart-playbook | Automated ansible playbook to deploy bahmni-mart along with metabase(docker container) and spring cloud data flow server(docker container) | Ansible, Docker | |
|
|
|
|
|
Setup, Config and Environment / DevOps | ||||
Reference Data | reference-data | Reference data setup for Bahmni | Groovy / Grails | |
OpenMRS-Distro-Bahmni | openmrs-distro-bahmni | Collects OpenMRS mods, and publishes Bahmni mods to bahmni repo. | Maven | |
Bahmni Package | bahmni-package | Bahmni deployment and RPMs | Gradle, Java, Shell scripting | |
Bahmni Vagrant | bahmni-vagrant | Management of vagrant box using packer. It comes with Bahmni on CentOS 6.8 | JSON, Shell Scripting | |
Bahmni Playbooks | bahmni-playbooks | Ansible playbooks used for deployments | Shell Scripting | |
Bahmni on Kubernetes | bahmni-k8s | Kubernetes Configuration for Bahmni Components | YAML, Kubernetes Config | |
Bahmni Infra | bahmni-infra | Terraform configuration for provisioning resources for Bahmni on Cloud. | Terraform | |
Helm Charts | helm-charts | Repository to store helm charts of Bahmni components. The artifacts are served using github pages . | Helm Repsitory | |
| ||||