Before jumping into setup local code for development, it is important to understand Bahmni and its architecture. This is because different sub-components of Bahmni have different backing code repositories (in different tech stacks) and hence, it is imperative you understand what repository/codebase you wish to setup locally, and why.
Code: Now you can setup the code (brief steps mentioned below for frontend and backend of Bahmni EMR). Note: You will need to know which repository you need to setup depending on what you wish to change. Ask on Slack #community channel for guidance.
Learn how to get started with the Bahmni Codebase. This article describes how to quickly get started with the codebase. For a more detailed guide, see Developer's Guide.
Navigate to the relevant subfolder for your desired configuration.
cd bahmni-docker/bahmni-standard OR cd bahmni-docker/bahmni-lite
Edit the .env.dev file, and make the following changes:
Change COMPOSE_PROFILES=bahmni-standard OR COMPOSE_PROFILES=bahmni-lite in the .env.dev file (or run with the default, which is just emr). For a detailed guide on the Docker compose profiles that Bahmni uses, see Docker Compose Profiles.
Execute the script:
This script provides various options such as start, stop, view logs, pull updates, reset, and more. You can read more about the script here.
Making Changes in Bahmni Apps
To make changes in Bahmni Apps, follow these steps: