The digital healthcare space has been hampered by proprietary tech, walled gardens, and vendor lock-in. Working as healthcare app developers ourselves, we kept seeing organizations developing the same infrastructure over and over. The question “how is this stuff not open source?” came up so often that we finally decided to just build it.
Out of the box, Medplum includes:
- Auth - An end-to-end identity solution for easy user authentication, sign-in, and permissions using OAuth, OpenID, and SMART App Launch
- Clinical Data Repository (CDR) - A back-end server that hosts your healthcare data in a secure, compliant, vendor neutral, and standards based repository
- A FHIR-based API for sending, receiving, and manipulating data
- SDK - Client libraries that simplify the process of interacting with our API or any FHIR server
- A web application where you can view your data, perform basic editing tasks
- UI Component Library - React components designed to help you quickly develop custom healthcare applications
- Medplum Bots - Write and run application logic server-side without needing to set up your own server
Our team has years of experience in healthcare technology. We were the founders of MedXT (YC W13) and have held engineering leadership roles at Box and One Medical.
Our repo is at https://github.com/medplum/medplum and you can see a demo video here: https://youtu.be/nf6OElRWOJ4. There’s a sample app at https://foomedical.com, with code at https://github.com/medplum/foomedical.
Medplum is under the Apache 2.0 license so any developer can use it for free with no strings attached. We make money through enterprise integrations, and by providing a hosted version and support. Compliance is a priority—we are SOC 2 and HIPAA compliant and are pursuing ONC and HITRUST. Our hosted service runs on AWS and uses cloud infrastructure similar to a typical SaaS application. This is also rare in healthcare.
We would love to know what you think - especially any recommendations or ideas you want to share, and would love to hear about your experiences developing healthcare applications!
Anybody know what Firebase’s competitors are? Help me out here.
Medplum expands on this concept by adding tools specific to digital health, such as a FHIR data schema for interoperability, EHR integration, and SMART App launching for embedding applications inside legacy EHRs
Imagine you are new to cloud world and you want to deploy production ready web app (not a toy project). With Firebase you can confidently and quickly make the app with little learning. This confident part is very important, with AWS you have to fight with AWS configuration for months, then also you may have doubts.
Firebase is acquired by Google-Cloud but still exists as a separate entity. For every Firebase project there is a behind the scene Google-Cloud project created.
My main complaint is their databases (they have two db's). RealtimeDB(which I believe will be deprecated) and FirestoreDB. FirestoreDB is proprietary and limited in features. For example there is no way to have a auto-increment(which is often used in many applications). The work-around suggested by Firestore auto-increment is very ugly. Direct editing and modifying the data (not programmatically) in FirestoreDB is a pain. There is no official db-query feature, if you have more data (like more than 1000 elements) their webUI to navigate FirestoreDB data is of no use.
I'm going to guess without even looking there are about 100,000 YouTube videos alone on the topic firebase. Medium and substack will have a heap of articles. Firebase has a website.
You're going to be ignored or worse get hate on hn posting long winded questions that could have been a single-term search on Google. It's quite literally a waste of everyone's time, yours included.
If you're looking for a hn flavored description, that's understandable, but again... Single term search would have taken you less time and effort than your post, and you'd already have the answer.
I pose this rhetorical question with love and respect, but why would anyone want to do (extremely trivial) research for you?
Do you have any happier/easier paths for extending the core data model to handle custom data?
If not, then falling back to extensions is the next logical step. FHIR extensions can be clunky to work with. Our client libraries provide a bunch of helper utilities to make it easier.
In extreme cases, we have created custom FHIR resources via custom StructureDefinition and SearchParameter resources to represent completely unique data elements (examples: https://github.com/medplum/medplum/blob/main/packages/defini...).
Among technical decision makers (Software Engineers, Architects, etc), the Firebase analogy clicks much faster. Among traditional healthcare administrators, "EHR" or "API first EHR" or "Headless EHR" resonate more.
We're definitely open to suggestions!
I see a lot of value in some of the components you are adding from an ecosystem standpoint. Quick q - are you building a server or focusing on the components on top? I guess I'm trying to understand the value prop vs. a system like HAPI of Google Health API? How robust is your support for data extraction eg. with StructureMaps, etc?
Congrats on the launch! Look forward to digging in more and my reach out.
Our goal is to provide a comprehensive experience that spans both front end and back end. In practice, we're focusing on a rock solid server first. At present, our front end components are best used for rapid prototyping and internal tools. Developers who want to create highly custom and pixel perfect designs will probably opt to use their own front end stack.
We do not currently support the StructureMap $transform operation, but we are actively working on it to support conversion to/from CCDA and other FHIR versions.
We have the utmost respect for HAPI, Google Health API, and all other FHIR servers. We believe that they are all contributing to cleaner and more interoperable data.
One key difference between the Medplum server and other FHIR servers is that it is designed to be use as a complete backend, not just a data store. That includes supplemental API endpoints for end-user auth and account management, automation ("Bots" for "if this, then that" style automation). The goal is that a developer should be able to create a complete digital healthcare experience with only a statically hosted website -- no additional servers required. In our experience, HAPI and Google Health API are used more like a database, where you run additional servers in front. We believe that providing a more comprehensive server lowers the barrier to entry, and reduces the maintenance burden for digital health providers.
Looking forward to hearing from you!
It's encouraging to see stuff like this moving into the OS realm, and I genuinely hope this type of competition and collaboration will lead to tangible benefits for patients (cost) and providers (ease of use) alike.
what's an example?
https://news.ycombinator.com/newsguidelines.html
See also https://news.ycombinator.com/showhn.html, since Launch HNs are a variation of Show HNs.
If/since this is a freemium model, can you talk about the kinds of features you would end up charging for?
The 2019 state of open-source EHR is reported here: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6517630/
It would be interesting if published an assessment of your status and plans using their criteria.
I've seen practices successfully using two of the recommended EHR systems. Technically most seem in the ballpark, but the key seems to be whether there is a robust community validating the code and providing timely support. In that respect, another open-source alternative is not necessarily a good thing. Do you have any community-building hires in mind?
As for clients: the adopters are often medical people who picked up enough technology to wire things together, and do so for their practice employees. They're not super interested in sharing the secret sauce of their practice with consultants who will simply repurpose that knowledge for the competition. The most successful OS EHR's seem to be configurable by these adopters.
But it seems medplum targets developers (not the practice professional). If (since) those developers may have a tough time, do you have designs to pivot to new low-code approaches for end-user?
Conversely, if you stick with the EHR-AAS back end, the trend of the last few years has been for private equity to buy practice groups. I don't see yet the incremental value for the adopter or users of your offering over existing EHR's. But equity would be super eager to buy practices with EHR's ready to audit for due diligence before purchase and ready to integrate after. That could be a selling point for practice managers. Do you have any biz-dev plans to coordinate with the equity groups playing in the medical space, or investments from them, to tide you over the long process of gaining mindshare in a conservative market?
1 The features we charge for are usage based. For example on our hosted service the number of FHIR resources and automations (Bot executions) customers use is tiered. We also charge for compliance related features, like a Business Associate Agreement (BAA).
2 I like the paper you linked to and think it is useful. In terms of the interoperability criteria - this looks very similar to the criteria for ONC certification. Though we are not yet certified, we are working on it and you can see some of our documentation here https://www.medplum.com/docs/compliance/onc
3 Community and support is one of our goals as well and yes, we plan to hire team members explicitly focused on community
4 We do target developers, and not practice professionals. There is value in low-code in specific scenarios, but are focused on the developer because the workflows and data structures are complex enough that programming is preferable to, for example, complex configurations. We do not expect that those who develop on top of us will make their code open source.
5 In terms of consolidation - we do think that having data stored in a standard compliant way (FHIR) and available via well-documented API is useful, both for the consolidation scenario and for other interop use cases. We don't have any plans to coordinate with equity groups at present - but that's an interesting idea
We are working with HL7v2 ADT, FHIR seems like a very different more complex beast. Nice that they use JSON, but it reminds me a lot of those XML days with lots of namespaces, you always needed an editor.
There is a fhirbase/fhirbase Docker container that wasn't updated for 3 years, they focus on AidBox now, it's closed source, no public pricing.
There is even an ibmcom/ibm-fhir-server Docker container, 2 months old, but their project page https://ibm.github.io/FHIR is gone.
Then I came across this article from better.care CTO talking about how openEHR and FHIR should be used in a combined system, which seems to make sense. Product seems to be closed source, no public pricing, made in the EU. https://medium.com/@alastairallen/fhir-openehr-2022-53716f83...
There is ehrserver, open source, but not a single word about FHIR https://github.com/ppazos/cabolabs-ehrserver
So there is a lot happening, will check out Medplum, FHIR seems the future :-)
Looking through your documentation what version of FHIR are you targeting? Are you using SMART on FHIR v2? or v1?
What version of USCDI are you using for your data model? Have you decided whether you'll hit US Core 3.1 or are you going to go through the SVAP purpose for ONC?
One of the biggest questions we get all the time from people is lab integration, and e-prescribe. Is this something you are punting to your customers or do you plan on supporting that out of the box?
Lab integrations and ePrescribe are interesting -- in our experience, the complexity is less technical, and more about getting access to the various systems. We work closely with our early customers on these partnerships. Our ultimate goal is to have turnkey integrations, so it's just a matter of entering connection details and credentials.
Congrats on the launch!
Medplum has a number of interoperability features: FHIR and HL7 endpoints, and developer tools to store and manipulate the data as needed. But our integrations are more "DIY" and developer focused.
At this point, everything running in production is 100% open source, and we don't have any plans for proprietary code.
I work for an Epic customer and I'm struggling to envision my organization purchasing something like this.
Medplum is a truly amazing solution to so many problems of building healthcare apps quickly. Before I had started chatting with the Medplum team it felt like an insurmountable task to experiment in the EHR area - the amount of infra & prep work we'd have to do made it so even for a proof of concept we'd have months before we could see anything useful.
It's really awesome to have so much of the hard part of handling health records done for us - and the depth of knowledge of the Medplum team is bar none when it comes to this area.
Y'all rock, congrats on the launch.
What kind of dependency vetting and monitoring is required for something like this where compliance is part of the picture?
We also follow best practices with automated tools like Sonar and Dependabot to automatically scan dependencies. We've gone through multiple pen tests. There's no silver bullet though, so it's a constant battle.
As a solo software engineer on a hospital-based clinical trial and having to build everything from scratch, I'm beyond excited for this product!!
Anyone who believes that healthcare is broken and could be vastly improved should look at Medplum's open-source projects. This is how you accelerate healthcare getting better software and breaking the stagnation that EHR companies have locked us into.