ohif-viewer/docs/latest/advanced/architecture.md
2019-04-24 23:16:14 -04:00

2.0 KiB

Architecture

Overview

The OHIF/Viewers repository contains the source code for the OHIF Medical Imaging Viewer. It is effectively a React progressive web app (PWA) that combines the business logic housed in OHIF/ohif-core and the components in our React Component library OHIF/react-viewerbase. It provides customization for common use cases through configuration and for adding functionality via extensions.

The purpose of this documentation is to better illustrate how these pieces work together to create a Viewer and where you should direct your attention for contributions.

Business Logic

Our goal is to maintain the majority of our business logic in OHIF/ohif-core. ohif-core offers pre-packaged solutions for features common to Web-based medical imaging viewers. For example:

  • Hotkeys
  • DICOM Web
  • Hanging Protocols
  • Managing a study's measurements
  • Managing a study's DICOM metadata
  • A flexible pattern for extensions
  • And many others

It does this while remaining decoupled from any particular view library or rendering logic. While we use it to power our React Viewer, it can be used with Vue, React, Vanilla JS, or any number of other frameworks.

Architecture Diagram

architecture diagram

Common Questions

Can I create my own Viewer using Vue.js or Angular.js?

You can, but you will not be able to leverage as much of the existing code and components. ohif-core could still be used for business logic, and to provide a model for extensions. react-viewerbase would then become a guide for the components you would need to recreate.