OpenMRS API and web application code
github.com/openmrs/openmrs-coreIndexed at 5167075Up to date with upstream
`repo` is the OpenMRS Java backend application: it consumes domain model inputs (e.g., `OpenmrsObject` entities, metadata, forms, users, and API requests), runs them through a layered service/logic pipeline (context + API services + business logic + scheduler/web integration), and produces runtime artifacts such as REST/API responses, persisted database changes (via Liquibase), and scheduled background job execution.
Written by gpt-5.4-nano from the index
2,318 files and 17,244 symbols in 6 modules, led by Java (1,282 files) and JavaScript (14).
Start reading
Code health
This codebase scores 7.4 out of 10 for code health, which we rate good. It also scores maintainability 7.8 and static performance 9.5 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 2 of 2,318 files are git hotspots, and they average 2.7 — which is where the fixes pay off most.
On the leaderboards:#6 of 11 Java repos
4 things worth doing this quarter.
Break up copyCustomizationIntoWebapp (CCN 11, 50 lines)
web/src/main/java/org/openmrs/web/Listener.java:462
copyCustomizationIntoWebapp nests its control flow deeply, and part of it is duplicated, so splitting it also removes a copy.
Break up doPost (CCN 62, 351 lines)
web/src/main/java/org/openmrs/web/filter/initialization/InitializationFilter.java:649
doPost nests its control flow deeply, and part of it is duplicated, so splitting it also removes a copy; changed 3 times in 90 days.
Delete 56 unused symbols and files (5,341 lines)
Nothing in the graph reaches them, across 51 files; every reader and agent pays to skip them.
Point Claude Code, Cursor, Codex or VS Code at this repository. Your agent gets the index this page is built from: cited answers, callers, history and health for any file.
https://api.repowise.dev/mcp/openmrs/openmrs-coreOne command, run anywhere. Adds the server to your local Claude Code config.
Docsclaude mcp add --transport http repowise https://api.repowise.dev/mcp/openmrs/openmrs-core \ --header "Authorization: Bearer rw_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
This repo is public, so anyone with a Repowise account and an API key can connect.
Try asking
Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.
Sign in with GitHub and we check that you are an admin or maintainer of openmrs/openmrs-core. Then add a badge to the README that links readers here.
Add this URL as a custom connector and sign in with repowise when asked. No API key to copy.
https://api.repowise.dev/mcp/openmrs/openmrs-coreFor maintainers
Every badge is public, cached, and updates on its own after every index. Nothing to install.
Links to this page, with no score on it. Adding it also re-indexes the repo every week.
[](https://repowise.dev/repo/openmrs/openmrs-core?src=badge_wiki)The repo's health score out of 10, from the latest index.
[](https://repowise.dev/repo/openmrs/openmrs-core?src=badge_health)A larger card with the score, its change since the last index, and when it was measured. The HTML version follows the reader's light or dark theme.
[](https://repowise.dev/repo/openmrs/openmrs-core?src=badge_card)OpenMRS API and web application code This page is a map of the openmrs/openmrs-core repository, written primarily in Java, rebuilt from the source each time it is indexed. Repowise parses every symbol, computes a dependency graph, scores per-file code health from complexity, duplication, test coverage and churn, mines git history for hotspots and ownership, and lifts the architectural decisions into documentation you can read here or query through MCP.
The codebase has 2,318 files and 17,244 symbols in 6 modules, led by Java, JavaScript and Shell. Code health is 7.4 out of 10, rated good.
Use the links above to open each view, or connect this repository to your agent for grounded answers inside Claude, Cursor, Codex or VS Code.