Back to rankings

medplum/medplum

TypeScriptmedplum.com

Medplum is a healthcare platform that helps you quickly develop high-quality compliant applications.

healthcarefhirfhir-servertypescriptelectronic-health-recordehrsoc2reacthipaagraphqlmedical
Star Growth
Stars
2.5k
Forks
859
Weekly Growth
Issues
497
1k2k
Jul 2021Mar 2023Nov 2024Jul 2026
Artifactsnpmnpm install medplum
README

Medplum · GitHub license npm version Quality Gate Status Coverage Status OpenSSF Best Practices

Medplum

Medplum is a developer platform that enables flexible and rapid development of healthcare apps.

  • Medplum Auth - End-to-end identity solution for easy user authentication, sign-in, and permissions using OAuth, OpenID, and SMART-on-FHIR.
  • Medplum Clinical Data Repository (CDR) - Backend server that hosts your healthcare data in a secure, compliant, and standards-based repository.
  • Medplum API - FHIR-based API for sending, receiving, and manipulating data.
  • Medplum SDK - Client libraries that simplify the process of interacting with the Medplum API.
  • Medplum App - Web application where you can view your data and perform basic editing tasks. You can also use the Medplum App to manage basic workflows.
  • Medplum Bots - Write and run application logic server-side without needing to set up your own server.
  • UI Component Library - React components designed to help you quickly develop custom healthcare applications.

Docs

Contributing

We heartily welcome any and all contributions that match our engineering standards!

That being said, this codebase isn't your typical open-source project because it's not a library or package with a limited scope -- it's our entire product. Our Contributing documentation has all the information you need to get started.

Ground Rules

Contributions and discussion guidelines

By making a contribution to this project, you are deemed to have accepted the Developer Certificate of Origin (DCO).

All conversations and communities on Medplum are expected to follow GitHub's Community Guidelines and Acceptable Use Policies. We expect discussions on issues and pull requests to stay positive, productive, and respectful. Remember: there are real people on the other side of the screen!

Reporting a bug or proposing a new feature

If you found a technical bug on Medplum or have ideas for features we should implement, the issue tracker is the best place to share with us. (click here to open a new issue)

Writing documentation or blog content

Did you learn how to do something using Medplum that wasn't obvious on your first try? By contributing your new knowledge to our documentation, you can help others who might have a similar use case!

Our documentation is hosted on medplum.com/docs, but it is built from Markdown files in our docs package.

For relatively small changes, you can edit files directly from your web browser on GitHub.dev without needing to clone the repository.

Fixing a bug or implementing a new feature

If you find a bug and open a Pull Request that fixes it, we'll review it as soon as possible to ensure it meets our engineering standards.

If you want to implement a new feature, open an issue first to discuss with us how the feature might work, and to ensure it fits into our roadmap and plans for the app.

If you want to contribute but are unsure how to start, we have a "good first issue" label which is applied to newcomer-friendly issues. Take a look at the full list of good first issues and pick something you like!

Ready to get started writing code? Follow the local setup instructions and jump in!

Codebase

Technologies

With the ground rules out of the way, let's talk about the coarse architecture of this mono repo:

  • Full-stack TypeScript: We use Node.js to power our servers, and React to power our frontend apps. Almost all of the code you'll touch in this codebase will be TypeScript.

Here is a list of all the big technologies we use:

  • PostgreSQL: Data storage
  • Redis: Background jobs and caching
  • Express: API server
  • TypeScript: Type-safe JavaScript
  • React: Frontend React app

Folder structure

medplum/
├── packages
│   ├── agent           # On-premise agent
│   ├── app             # Frontend web app
│   ├── bot-layer       # AWS Lambda Layer for Bots
│   ├── cdk             # AWS CDK infra as code
│   ├── cli             # Command line interface
│   ├── core            # Core shared library
│   ├── definitions     # Data definitions
│   ├── docs            # Documentation
│   ├── examples        # Example code used in documentation
│   ├── fhir-router     # FHIR URL router
│   ├── fhirtypes       # FHIR TypeScript definitions
│   ├── generator       # Code generator utilities
│   ├── graphiql        # Preconfigured GraphiQL
│   ├── hl7             # HL7 client and server
│   ├── mock            # Mock FHIR data for testing
│   ├── react           # React component library
│   ├── react-hooks     # React hooks library
│   └── server          # Backend API server
└── scripts             # Helper bash scripts

Thanks

Chromatic

Thanks to Chromatic for providing the visual testing platform that helps us review UI changes and catch visual regressions.

License

Apache 2.0

Related repositories
frappe/erpnext

Free and Open Source Enterprise Resource Planning (ERP)

PythonPyPIGNU General Public License v3.0manufacturingerpnext
frappe.io/erpnext
37.1k12.1k
pliang279/awesome-multimodal-ml

Reading list for research topics in multimodal machine learning

MIT Licensemultimodal-learningmachine-learning
6.9k900
openemr/openemr

The most popular open source electronic health records and medical practice management solution.

PHPPackagistGNU General Public License v3.0openemrpractice-management
open-emr.org
5.3k3k
maziyarpanahi/openmed

Local-first healthcare AI: clinical NER & HIPAA PII de-identification that runs 100% on-device. 1,000+ medical models, 12 languages, Apple MLX + Python, no cloud, no patient data leaving your network. Apache-2.0

PythonPyPIApache License 2.0healthcarellm
openmed.life
4.7k569
OpenHealthForAll/open-health

OpenHealth, AI Health Assistant | Powered by Your Data

TypeScriptnpmGNU Affero General Public License v3.0aihealthcare
open-health.me
3.9k423
fastenhealth/fasten-onprem

Fasten is an open-source, self-hosted, personal/family electronic medical record manager

GoGo ModulesGNU General Public License v3.0electronic-health-recordelectronic-medical-record
2.8k171
hapifhir/hapi-fhir

🔥 HAPI FHIR - Java API for HL7 FHIR Clients and Servers

JavaMavenApache License 2.0javahl7
hapifhir.io
2.4k1.5k
the-momentum/open-wearables

Self-hosted platform to unify wearable health data through one AI-ready API.

PythonPyPIMIT Licensewearablesapple-health
docs.openwearables.io
2.2k409
openmrs/openmrs-core

OpenMRS API and web application code

JavaMavenOtheremrehr
openmrs.org
1.9k4.3k
sunlabuiuc/PyHealth

A Deep Learning Python Toolkit for Healthcare Applications.

PythonPyPIMIT Licensehealthcaredata-mining
pyhealth.dev
1.6k782
bowang-lab/MedRAX

MedRAX: Medical Reasoning Agent for Chest X-ray - ICML 2025

PythonPyPIApache License 2.0agentagentic-ai
bowang-lab.github.io/MedRAX/
1.2k202
nextgenhealthcare/connect

The swiss army knife of healthcare integration.

JavaMavenOthermirthmirth-connect
1.2k457