repowiserepowise
Sign in
openmrs/openmrs-core
OverviewDocsArchitectureKnowledge GraphFilesCode HealthSecurityRefactoring

People & History

CommitsContributorsDecisions
Chat
Stats
repowiserepowise
ExplorePricingDocs
Sign in
repowiseopenmrs/openmrs-core
OP
OP

openmrs / openmrs-core

OpenMRS API and web application code

Java★ 1,934
Use in your agentAsk this codebase

github.com/openmrs/openmrs-core·Indexed at 5167075·3mo ago·Up to date with upstream

About this codebase

`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

  • Knowledge graph1,350 files and how they depend on each other.→
  • Module: openmrs/apiDocumentationDocumentation for api/src/main/java/org/openmrs/api, written by gpt-5.4-nano.→
  • Fix CVE-2019-10172: Remove vulnerable jackson-mapper-asl 1.x dependencyDecisionProposed decision, from a pull request.→

Code health

7.4out of 10Good

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.

Full health report →

On the leaderboards:#6 of 11 Java repos

Do next

4 things worth doing this quarter.

Worth planning

  • 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.

    gain
    up to +1.0 health on this file(inferred)
    finding
    Nested complexity
    size
    CCN 11, 50 lines, nests 8 deep
    severity
    critical
    Medium effort, worth a check
  • 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.

    gain
    up to +0.7 health on this file(inferred)
    finding
    Nested complexity
    size
    CCN 62, 351 lines, nests 7 deep
    severity
    critical
    Medium effort, worth a check
  • 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.

    symbols
    56
    lines
    5,341
    safe to delete
    Yes(inferred)
    Medium effort
Listing 3 of 6.
All actions in the Overview →

Use openmrs/openmrs-core in your agent

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-core

One command, run anywhere. Adds the server to your local Claude Code config.

Docs
bash
claude mcp add --transport http repowise https://api.repowise.dev/mcp/openmrs/openmrs-core \
  --header "Authorization: Bearer rw_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
The snippet shows a placeholder key. Generate one to get a copyable secret.
Sign in and create an API key to connect.Sign in

This repo is public, so anyone with a Repowise account and an API key can connect.

Try asking

  • get_overview()
  • get_answer("how is openmrs-core put together?")
  • get_why("why is openmrs-core structured this way?")

Prefer local? pip install repowise && repowise init indexes your own checkout, no account needed.

Go deeper

  • OverviewEverything the index found, what changed this week, commits and decisions.→
  • DocumentationModule-by-module documentation, 1,373 pages, 281 written by a model.→
  • ArchitectureDependency graph, layers and third-party dependencies.→
  • Code healthEvery file's score, the findings behind it, tests and refactoring plans.→
  • CommitsEach commit's effect on code health, with agent provenance.→
  • ContributorsWho owns what, and where one person holds most of the knowledge.→
  • DecisionsArchitectural decisions mined from commits and pull requests.→
  • Ask this codebaseSign inGrounded answers over the indexed code.→

Maintain this repo? Claim the page

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.

Use this repo from Claude or ChatGPT

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-core
Sign up to connect

For maintainers

Add a badge to your README

Every badge is public, cached, and updates on its own after every index. Nothing to install.

Repowise badge

Links to this page, with no score on it. Adding it also re-indexes the repo every week.

Repowise badge preview
[![repowise.dev](https://api.repowise.dev/badge/wiki/openmrs/openmrs-core.svg)](https://repowise.dev/repo/openmrs/openmrs-core?src=badge_wiki)

Code health badge

The repo's health score out of 10, from the latest index.

Code health badge preview
[![repowise.dev code health](https://api.repowise.dev/badge/health/openmrs/openmrs-core.svg)](https://repowise.dev/repo/openmrs/openmrs-core?src=badge_health)

Code health card

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.

Code health card preview
[![repowise.dev code health](https://api.repowise.dev/badge/health/openmrs/openmrs-core.svg?style=card)](https://repowise.dev/repo/openmrs/openmrs-core?src=badge_card)

How openmrs/openmrs-core works

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.