Welcome to the OpenSRP wiki! If you have landed here for the first time, please view the Overview page for general information about the platform.
This section describes terminology and steps to get started with the platform and our community. We recognize that this wiki is used by diverse audiences with different needs. We have set it up for easy navigation and are actively working to make it better. Please leave a comment on a page or contact us through the developer forum if you find something that could be improved.
OpenSRP Community Collaboration
The OpenSRP community is a group of governments, organizations and individuals who all contribute to building and sustaining implementations. We openly welcome contributions and collaboration opportunities.
Developers are invited to collaborate, following the processes outlined in the Developer's guide. This guide includes information on how to get a development environment set up, core concepts with the platform, and how to contribute. Note, we have clear coding guidelines available here. If you have any setup questions, please send an email to the mailing list and you will get help as soon as possible. The community also provides real-time collaboration on Slack.
The OpenSRP client (Android application) code lives in a Git repository and the OpenSRP server code lives in a Git repository. The README file includes instructions to set up the system and also contains the public credentials for testing the application.
We utilize the following definitions liberally throughout our website and this wiki.
A module is a set of features that are coupled together to solve a health-related functional area. These modules traverse technical domains (client and server) to deliver health outcomes.
Family Planning (FP)
Antenatal Care (ANC)
Postnatal Care (PNC)
Early Childhood Development (ECD)
Tuberculosis (TB) Case Management and Treatment
A feature is a component of a module that allows health workers to perform one or more work-related tasks.
Client Identification and Registration
Health Worker Support and Performance Management
Supply Chain Management
In the Technical domain, we have a number of additional terms:
An app is a collection of modules with custom business logic and branding that is delivered to achieve a set of health-related workflows for an implementation.
Thrive Implementations (Bangladesh, Indonesia, Pakistan)
ZEIR - Zambia Electronic Immunization Register
KIP - Kenya Immunisation Platform
A library is a shared resource that delivers core features across applications. A library contains all of the appropriate views, data model and business logic to be able to perform specialized functionality. There are many libraries in an app and they directly link to code repositories on GitHub.