DWV (DICOM Web Viewer) is an open source zero footprint medical image viewer library. It uses only javascript and HTML5 technologies, meaning that it can be run on any platform that provides a modern browser (laptop, tablet, phone and even modern TVs). It can load local or remote data in DICOM format (the standard for medical imaging data such as MR, CT, Echo, Mammo, NM...) and provides standard tools for its manipulation such as contrast, zoom, drag, possibility to draw regions on top of the image and imaging filters such as threshold and sharpening.
Try a live demo and read a lot more information on the wiki (such as Dicom-Support or Pacs-Support). You can also check out the example viewers based on dwv.
- All coding/implementation contributions and comments are welcome.
- DWV is not certified for diagnostic use.1
- Released under GNU GPL-3.0 license (see license.txt).
And for those who want to support the dwv development:
Get the code:
git clone https://github.com/ivmartel/dwv.git
Move to its folder:
cd dwv
Install dependencies:
yarn install
Call the test script to launch the tests on a local server:
yarn run test
You can now open a browser at http://localhost:8080 and enjoy!
# install dependencies
yarn install
# run linting
yarn run lint
# run unit tests with hot reload at localhost:8080
yarn run test
# create release files
yarn run build
# create documentation
yarn run doc
# watch for changes and copy build (to be connected with a demo viewer)
yarn run dev
Using yarn
as the main package manager. Best to use it to install since
the lock file (that contains the exact dependency tree) is a yarn file.
All scripts also work with npm
.
1: Certification refers to official medical software certification that are issued by the FDA or EU Notified Bodies. The sentence here serves as a reminder that the Dicom Web Viewer is not ceritifed, and comes with no warranties (and no possible liability of its authors) as stated in the license. To learn more about standards used in certification, see the wikipedia Medical software page. If you have additional questions, please open an issue.