18 Frameworks, Libraries, and Projects for Building Medical Applications
While consulting for medical projects over the years and working on some, I collected hundreds of domain-specific libraries and frameworks built to help developers make medical applications. However, many of the libraries were not supported or popular enough to survive as they were abandoned by their creators over the years.
Here in Medevel, we are always keeping an eye on medical and health-care development libraries and frameworks for building clinical, medical imaging and digital pathology applications. So, It's the time for this list which contains the most used and production-ready frameworks and libraries.
Although I already wrote about DICOM libraries and frameworks here in this blog to serve as guides for developers and programmers, my list is still growing to include user-interfaces toolkits, medical records frameworks. So I decided to write this article.
We (Medevel.com) made several tests with most of these open-source libraries listed here and prepared notes for some of our customers to help them choose the best that fits their projects' requirements.
Why choose an open-source Framework/ Library for Building Clinical and Medical Apps?
- The freedom of license, legal issues
- The community
- Own your data
- More involvement of your team
- Custom workflow/ case design on top of the framework
Things to consider
The decision to use open-source case-specific framework or library should always come with these considerations:
- Is the project frequently updated?
- Is it supported by its creators?
- How big and active its community?
- Does it have enough demos and tutorials?
- Does it use popular supported or unpopular technologies?
- Is the code-based outdated?
- Does it have poor or good support?
- How is the project's documentation?
Please note the order of this list does not reflect the strength of the project.
Open-source Medical and Health-care Frameworks and Libraries
1- Opal: Medical records specific framework
Opal is my top pick here because I consider it the best project to address the creation of electronic medical records "EMR/ EHR". It's built-on top of Django which is an old but powerful python framework for creating rich database applications.
I used Django to create two EMR solutions for clients, and I consider Django is the best stable solution to create medical record applications, in terms of application structure, clean-code , support, and finding/ hiring Django-developers to keep up the project updated.
Opal provides a set of command-line tools, modules, batteries to ease the production of EMR solutions. It has rich documentation and a powerful community of developers in its back.
The only downside for Opal is that it's based on the old version of Django. It uses Angular; a JavaScript client framework, and the Bootstrap CSS framework. However, This is the only framework/ library on this list that provides a complete set and support for building electronic medical records applications.
2- OHIF Viewer
OHIF Viewer is a product of OHIF "Open Health Imaging Foundation"; It's an advanced feature-rich web-based DICOM viewer. It's a good option for developers who want to build web-based DICOM applications. The project is well-supported, well documented, and built with modern technologies (Node.JS and React) that make it easy to find developers to customize it.
OHIF Viewer is almost the only project on this list that can create both DICOM viewer and Whole-Slide Image (Digital Pathology/ Virtual Slide) Viewer.
OHIF viewer is our top pick as an open-source web-based DICOM viewer.
Recommended for: Building Web-based DICOM applications.
3- Cornerstone: DICOM Viewer toolkit
Building a web-based DICOM from scratch is not easy, That requires hundreds of hours for developing, testing, fixing bugs, and managing usability issues. So here comes this library. Cornerstone is a library to build web-based browser-ready DICOM viewers. It has a long-list of function-ready tools to do almost everything with DICOM files.
It's also battled-tested with real-world applications, to explain more check OHIF Viewer which uses it.
Medevel's Proof of concept:
We were able to run Cornerstone with Meteor seamlessly smoothly without any issue.
Recommended for: Building web-based DICOM viewer.
4- The X Toolkit
The X Toolkit is a lightweight JavaScript toolkit to build browser-based 3D medical imaging applications.
This toolkit is providing a high education value for developers and researchers as it has rich documentation, tutorial-set, and demos.
We have covered written a quick preview about this toolkit here: The X Toolkit: Open source Browser-based 3D Scientific & Medical Visualization Framework for building Web-based WebGL powered Application.
5- AMI Medical Imaging JavaScript ToolKit
AMI is a medical imaging JavaScript toolkit for building rich 2D/ 3D medical imaging applications. It's also another production-ready library with a long feature-list that speeds up development time and provides quality results. AMI is an easy-to-learn library and can integrate seamlessly into existing JavaScript applications.
We have covered its features here: AMI Medical Imaging (AMI) JavaScript ToolKit for building Web-based 2D/ 3D DICOM apps.
6- EasyPACS
EasyPACS is an open-source DICOM/ PACS-server that is packed in one-file. Despite it's built by one developer, it's a powerful and production-ready system.
Unlike other open-source PACS-servers out there, EasyPACS is easy to use and developer-friendly enough to build applications on top of it.
Here is our review about EasyPACS: EasyPACS: Free Open source DICOM/ PACS server in single file.
There are some downsides for using EasyPACS for production:
1- It's created and maintained by one developer
2- Does not have a community
3- Has not been updated for 5 years.
7- Terra UI (React)
This library "Terra UI" is a unique one, it focuses on providing user-interface components and elements to build a medical and clinical application in "React". React is a popular JavaScript Framework, used by developers and in enterprise companies. React is also the main library in OHIF viewer that we mention above.
To know more about Terra UI, we got you covered: erra UI : React based Components for Building Clinical/ Medical Applications.
Recommended for: We highly recommend Terra UI for react developers who are building clinical healthcare/ medical applications, either for desktop or mobile.
8- OpenSlide: Digital Pathology and Virtual Slide Master
A library that manages and reads digital pathology virtual slides was a dream came true with OpenSlide: Which is a C library for processing virtual slides. It comes with Java, Python, and JavaScript implementations. It's well developed and battle-tested with hundreds of digital pathology apps over the years.
You may find some projects where OpenSlide library is used here: 10 Open-source Whole-Slide Image Solutions.
Recommended for:
Creating a digital pathology virtual slide viewer.
Medevel's test:
OpenSlide JavaScript implementation with Meteor JavaScript Platform.
9- Dicoogle (PACS system)
Dicoogle is an enterprise-grade modular developer-friendly PACS-server. It's completely free "open-source" that comes with extensive developer documentation.
Dicoogle is our top recommendation at Medevel for building PACS-server applications. It's well developed, supported, and with a good community of developers. You may find some projects where OpenSlide library was begin used in this list: 10 Open-source Whole-Slide Image Solutions.
10- Orthanc (PACS-server)
Orthanc is an enterprise open-source PACS-server. It has a community edition and enterprise "Pro" edition.
Orthanc developers are providing enterprise-grade training, support, and consultation services for its enterprise users.
11- DWV (DICOM Web Viewer)
DWV is a lightweight JavaScript library for building browser-based DICOM viewer.
Unlike Cornerstone, it does not require extensive complex setup, as well as it can be integrated seamlessly with JavaScript web applications and several JavaScript frameworks (Vue and Angular).
Medevel's tests:
We have tested DWV with the Meteor JavaScript Platform and integrated it with Vue and Angular applications.
12- GIMIAS (Medical Imaging Framework)
GIMIAS is a medical imaging-specific framework for building medical imaging and medical imaging simulation applications. It comes with a highly configurable user-interface and a powerful feature-list.
GIMIAS is currently working on Linux and Windows only.
GIMIAS quick review on Medevel.com.
13- ResearchKit (iOS/ macOS)
ResearchKit is a native framework for building healthcare, medical and clinical applications for Apple devices. It supports iOS development as well as macOS desktop applications.
It's the only Apple-specific framework in this list. It's well-documented, stable, and production-ready. It's gaining a strong foothold among iOS/ macOS developers who are building medical and healthcare applications worldwide. It comes with full support for Objective-C and Swift.
14- CamiTK:CAMI Medical imaging Prototyping Toolkit
CamiTK or CAMI is a medical imaging prototyping toolkit, aims to save the development time while building medical imaging applications. The CamiTK provides a rich set of development tools and libraries that manage image processing, visualization, and analysis tasks.
CamiTK "CAMI" focuses on medical imaging visualization, image processing, and biomechanical modeling and prototyping.
Although the project is aiming for researchers and focuses on prototyping, It captures the attention of enterprise users, therefore the developers provide training, support, and consultation for freelancers, researchers, and enterprises.
15- DCM4CHE: DICOM + Java
Because Java is the programming language for enterprise solutions, We can't skip mentioning the most popular open-source DICOM library for Java developers; "DCM4CHE".
DCM4CHE is a set of tools and libraries and tools for managing, retrieving, and processing DICOM images. It also comes with a web user-interface, storage manager, archive manager, and complete HL7-server building tools.
DCM4CHE is our top recommendation for Java developers for building medical imaging applications.
16- ITK (Insight ToolKit)
Insight ToolKit or ( ITK) is a free and open-source image analysis toolkit. It has been the core engine behind many medical imaging applications for the last ten years.
It's regularly updated and supported by an active community of software engineers and developers. It also comes with full support for C++ and Python.
ITK is already used to build multi-platform imaging applications that work seamlessly on macOS, Windows, and Linux.
17- OpenHealth.Org
OpenHealth.org is setting up standards for medical application development.
18- QtDCM
- QtDCM: A library for building DICOM applications with QT.
A note to the developers;
We thank all open-source developers who are involved in creating clinical, health-care, and medical-imaging specific libraries and frameworks. We greatly value the effort, the time required to code, test, polish such projects to the production state as an open-source project.
So, THANK YOU.
Conclusion
Here ends our list, but we are planning to keep it updated with more frameworks and libraries. If you know any other open-source framework that worth mention