👩‍💻 For Developers

👩‍💻 For Developers

For Developers

Engineers contributing code, building integrations, or extending OpenELIS Global.

Who this is for

You're writing or modifying code in the OpenELIS Global codebase, or building integrations against its APIs (FHIR, ASTM, plugin SDK). This section covers local dev setup, architectural context, the FHIR surface, RBAC at the technical level, and the QA test framework. It does not cover operational documentation — for that, see For Operators.

Where the code lives

What to read first (new contributor onboarding)

  1. Dev Environment Setup Instructions — get OE running locally on your machine.

  2. Developer Notes — codebase patterns, architectural context, common gotchas.

  3. Entity Relationship Diagram — the database schema, your map of the data model.

  4. Lab-domain primers — if you don't have a clinical lab background, start with: Microbiology Module — Workflow Walk-through (for developers) — what a real microbiology workflow looks like end-to-end. QA Narrative — Quality in the Lab (Four Pillars, for developers) — the regulatory context for why the QA module exists.

  5. Pick a starter issue on GitHub and ask in Talk before starting.

Reference docs

Interoperability

Authentication / Authorization

Testing & QA

Configuration Initializer

Developer Documentation: Configuration Initializer — internals of how configuration loads at startup.

How to contribute

  1. Read the README in the main repo for current contribution guidelines.

  2. Coordinate with the team in Talk before starting substantial work — the project has an active roadmap and avoiding duplicated effort is critical.

  3. Submit pull requests against the develop branch.

  4. Add Playwright E2E tests for new features per the framework guide.

  5. Update Confluence documentation for user-visible changes — that's part of the definition of done.

Where to get help

  • OpenMRS Talk — primary developer Q&A forum

  • GitHub Issues — bug reports and feature requests

  • Pull request reviews — tag the maintainers in your PR description

Stay current

Watch the Releases page for milestone announcements. Watch the FHIR Implementation Guide if you're building an interoperability integration. Subscribe to GitHub releases on the main repo for code-level change notifications.