From 300886f315cb81698cc85160cc6120151c7467d0 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 14:01:19 -0400 Subject: [PATCH 01/11] The why --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index c8b295b95..9dc686a64 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ # Viewers This repo contains the OHIF DICOM Viewer and Lesion Tracker, and various shared meteor packages. +## Why? + +Building a web based medical imaging viewer from scratch is time intensive, hard to get right, and expensive. Instead of re-inventing the wheel, you can use the OHIF Viewer as a rock solid platform to build on top of. The Viewer is a [React](https://reactjs.org/) [Progressive Web Application](https://developers.google.com/web/progressive-web-apps/) that can be embedded in existing applications via it's [packaged source (ohif-viewer)](https://www.npmjs.com/package/ohif-viewer) or hosted stand-alone. The Viewer exposes [configuration](https://deploy-preview-398--ohif.netlify.com/essentials/configuration.html) and [extensions](https://deploy-preview-398--ohif.netlify.com/advanced/extensions.html) to support workflow customization and advanced functionality at common integration points. + +If you're interested in using the OHIF Viewer, but you're not sure it supports your use case [check out our docs](https://deploy-preview-398--ohif.netlify.com/). Still not sure, or you would like to propose new features? Don't hesitate to [create an issue](https://github.com/OHIF/Viewers/issues) or open a pull request ^_^ Documentation is available here: http://docs.ohif.org/ From 95dd18dc90d9b1d0fef61bd9ae42d870e13dded4 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 14:01:35 -0400 Subject: [PATCH 02/11] Read the docs --- README.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/README.md b/README.md index 9dc686a64..afde302fc 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,13 @@ # Viewers This repo contains the OHIF DICOM Viewer and Lesion Tracker, and various shared meteor packages. + +
+ Read The Docs | + Edit the docs +
+ + +
## Why? Building a web based medical imaging viewer from scratch is time intensive, hard to get right, and expensive. Instead of re-inventing the wheel, you can use the OHIF Viewer as a rock solid platform to build on top of. The Viewer is a [React](https://reactjs.org/) [Progressive Web Application](https://developers.google.com/web/progressive-web-apps/) that can be embedded in existing applications via it's [packaged source (ohif-viewer)](https://www.npmjs.com/package/ohif-viewer) or hosted stand-alone. The Viewer exposes [configuration](https://deploy-preview-398--ohif.netlify.com/essentials/configuration.html) and [extensions](https://deploy-preview-398--ohif.netlify.com/advanced/extensions.html) to support workflow customization and advanced functionality at common integration points. From cdf12511eaf224d9863cd75ac5b899a7db0b384e Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 14:59:59 -0400 Subject: [PATCH 03/11] Badges --- README.md | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/README.md b/README.md index afde302fc..2cee0fdb8 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,19 @@ This repo contains the OHIF DICOM Viewer and Lesion Tracker, and various shared
+ +[![CircleCI][circleci-image]][circleci-url] +[![codecov][codecov-image]][codecov-url] +[![All Contributors][all-contributors-image]][contributing-url] +[![code style: prettier][prettier-image]][prettier-url] +[![semantic-release][semantic-image]][semantic-url] + +[![NPM version][npm-version-image]][npm-url] +[![NPM downloads][npm-downloads-image]][npm-url] +[![MIT License][license-image]][license-url] + + + ## Why? Building a web based medical imaging viewer from scratch is time intensive, hard to get right, and expensive. Instead of re-inventing the wheel, you can use the OHIF Viewer as a rock solid platform to build on top of. The Viewer is a [React](https://reactjs.org/) [Progressive Web Application](https://developers.google.com/web/progressive-web-apps/) that can be embedded in existing applications via it's [packaged source (ohif-viewer)](https://www.npmjs.com/package/ohif-viewer) or hosted stand-alone. The Viewer exposes [configuration](https://deploy-preview-398--ohif.netlify.com/essentials/configuration.html) and [extensions](https://deploy-preview-398--ohif.netlify.com/advanced/extensions.html) to support workflow customization and advanced functionality at common integration points. @@ -15,6 +28,25 @@ Building a web based medical imaging viewer from scratch is time intensive, hard If you're interested in using the OHIF Viewer, but you're not sure it supports your use case [check out our docs](https://deploy-preview-398--ohif.netlify.com/). Still not sure, or you would like to propose new features? Don't hesitate to [create an issue](https://github.com/OHIF/Viewers/issues) or open a pull request ^_^ Documentation is available here: http://docs.ohif.org/ + + +[all-contributors-image]: https://img.shields.io/badge/all_contributors-0-orange.svg?style=flat-square +[contributing-url]: https://github.com/OHIF/Viewers/blob/react/CONTRIBUTING.md +[circleci-image]: https://circleci.com/gh/OHIF/Viewers.svg?style=svg +[circleci-url]: https://circleci.com/gh/OHIF/Viewers +[codecov-image]: https://codecov.io/gh/OHIF/Viewers/branch/react/graph/badge.svg +[codecov-url]: https://codecov.io/gh/OHIF/Viewers +[prettier-image]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square +[prettier-url]: https://github.com/prettier/prettier +[semantic-image]: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg +[semantic-url]: https://github.com/semantic-release/semantic-release + +[npm-url]: https://npmjs.org/package/ohif-viewer +[npm-downloads-image]: https://img.shields.io/npm/dm/ohif-viewer.svg?style=flat-square +[npm-version-image]: https://img.shields.io/npm/v/ohif-viewer.svg?style=flat-square +[license-image]: https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square +[license-url]: LICENSE + ### Demos [OHIF Viewer](http://viewer.ohif.org/) - A general-purpose radiology viewer with a variety of tools exposed. From 8c0138d1830a741590336cc6ec2b9773e0d04c53 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:00:17 -0400 Subject: [PATCH 04/11] Issues --- README.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/README.md b/README.md index 2cee0fdb8..d6938d7e0 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,39 @@ Building a web based medical imaging viewer from scratch is time intensive, hard If you're interested in using the OHIF Viewer, but you're not sure it supports your use case [check out our docs](https://deploy-preview-398--ohif.netlify.com/). Still not sure, or you would like to propose new features? Don't hesitate to [create an issue](https://github.com/OHIF/Viewers/issues) or open a pull request ^_^ Documentation is available here: http://docs.ohif.org/ +## Issues + +_Looking to contribute? Look for the [Good First Issue][good-first-issue] +label._ + +### 🐛 Bugs + +Please file an issue for bugs, missing documentation, or unexpected behavior. + +[**See Bugs**][bugs] + +### 💡 Feature Requests + +Please file an issue to suggest new features. Vote on feature requests by adding +a 👍. This helps maintainers prioritize what to work on. + +[**See Feature Requests**][requests-feature] + +### ❓ Questions + +For questions related to using the library, please visit our support community, +or file an issue on GitHub. + +[Google Group][google-group] + +## License + +MIT © [OHIF](https://github.com/OHIF) + + + [all-contributors-image]: https://img.shields.io/badge/all_contributors-0-orange.svg?style=flat-square From 8c75599bd2bb7dc64632c7d1d0b5ed120af1479b Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:00:29 -0400 Subject: [PATCH 05/11] Contributing --- README.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/README.md b/README.md index d6938d7e0..a873351ef 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,33 @@ Building a web based medical imaging viewer from scratch is time intensive, hard If you're interested in using the OHIF Viewer, but you're not sure it supports your use case [check out our docs](https://deploy-preview-398--ohif.netlify.com/). Still not sure, or you would like to propose new features? Don't hesitate to [create an issue](https://github.com/OHIF/Viewers/issues) or open a pull request ^_^ Documentation is available here: http://docs.ohif.org/ +### Contributing + +It is notoriously difficult to setup multiple dependent repositories for +end-to-end testing and development. That's why we recommend writing and running +unit tests when adding and modifying features. This allows us to program in isolation without a complex setup, and has the added benefit of producing well-tested business logic. + +1. Clone this repository +2. Navigate to the project directory, and `yarn install` +3. To begin making changes, `yarn run dev` +4. To commit changes, run `yarn run cm` + +When creating tests, place the test file "next to" the file you're testing. +[For example](https://github.com/OHIF/Viewers/blob/react/src/index.test.js): + +```js +// File +index.js + +// Test for file +index.test.js +``` + +As you add and modify code, `jest` will watch for uncommitted changes and run +your tests, reporting the results to your terminal. Make a pull request with +your changes to `master`, and a core team member will review your work. If you +have any questions, please don't hesitate to reach out via a GitHub issue. + ## Issues _Looking to contribute? Look for the [Good First Issue][good-first-issue] From daaa42456aabe13657585d6610f27b1e5198842e Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:00:48 -0400 Subject: [PATCH 06/11] Getting Started --- README.md | 38 +++++++++++++++++++++++++++++++++++++- 1 file changed, 37 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index a873351ef..9b7c71e8f 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,43 @@ Building a web based medical imaging viewer from scratch is time intensive, hard If you're interested in using the OHIF Viewer, but you're not sure it supports your use case [check out our docs](https://deploy-preview-398--ohif.netlify.com/). Still not sure, or you would like to propose new features? Don't hesitate to [create an issue](https://github.com/OHIF/Viewers/issues) or open a pull request ^_^ -Documentation is available here: http://docs.ohif.org/ + +## Getting Started + +This readme is specific to testing and developing locally. If you're more interested in production deployment strategies, [you can check out our documentation on publishing](https://deploy-preview-398--ohif.netlify.com/). + +Want to play around before you dig in? [Check out our LIVE Demo](https://viewer.ohif.org/) + +### Setup + +_Requirements:_ + +- [NodeJS & NPM](https://nodejs.org/en/download/) +- [Yarn](https://yarnpkg.com/lang/en/docs/install/) + +_Steps:_ + +1. Fork this repository +2. Clone your forked repository (your `origin`) + - `git clone git@github.com:YOUR_GITHUB_USERNAME/Viewers.git` +3. Add `OHIF/Viewers` as a `remote` repository (the `upstream`) + - `git remote add upstream git@github.com:OHIF/Viewers.git` + + +### Developing Locally + +In your cloned repository's root folder, run: + +```js +// Restore dependencies +yarn install + +// Stands up local server to host Viewer. +// Viewer connects to our public cloud PACS by default +yarn start +``` + + ### Contributing It is notoriously difficult to setup multiple dependent repositories for From 8ee610565abb430fef67612e9a2bd818bdbceb61 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:01:01 -0400 Subject: [PATCH 07/11] Why updates --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9b7c71e8f..d1e57e296 100644 --- a/README.md +++ b/README.md @@ -23,7 +23,7 @@ This repo contains the OHIF DICOM Viewer and Lesion Tracker, and various shared ## Why? -Building a web based medical imaging viewer from scratch is time intensive, hard to get right, and expensive. Instead of re-inventing the wheel, you can use the OHIF Viewer as a rock solid platform to build on top of. The Viewer is a [React](https://reactjs.org/) [Progressive Web Application](https://developers.google.com/web/progressive-web-apps/) that can be embedded in existing applications via it's [packaged source (ohif-viewer)](https://www.npmjs.com/package/ohif-viewer) or hosted stand-alone. The Viewer exposes [configuration](https://deploy-preview-398--ohif.netlify.com/essentials/configuration.html) and [extensions](https://deploy-preview-398--ohif.netlify.com/advanced/extensions.html) to support workflow customization and advanced functionality at common integration points. +Building a web based medical imaging viewer from scratch is time intensive, hard to get right, and expensive. Instead of re-inventing the wheel, you can use the OHIF Viewer as a rock solid platform to build on top of. The Viewer is a [React][react-url] [Progressive Web Application][pwa-url] that can be embedded in existing applications via it's [packaged source (ohif-viewer)][ohif-viewer-url] or hosted stand-alone. The Viewer exposes [configuration][configuration-url] and [extensions][extensions-url] to support workflow customization and advanced functionality at common integration points. If you're interested in using the OHIF Viewer, but you're not sure it supports your use case [check out our docs](https://deploy-preview-398--ohif.netlify.com/). Still not sure, or you would like to propose new features? Don't hesitate to [create an issue](https://github.com/OHIF/Viewers/issues) or open a pull request ^_^ From 393a3f37d3de878bdeadb3ae785971655b5ea69f Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:01:18 -0400 Subject: [PATCH 08/11] MISC urls --- README.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/README.md b/README.md index d1e57e296..57a995fea 100644 --- a/README.md +++ b/README.md @@ -143,6 +143,20 @@ Links: [license-image]: https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square [license-url]: LICENSE +[react-url]: https://reactjs.org/ +[pwa-url]: https://developers.google.com/web/progressive-web-apps/ +[ohif-viewer-url]: https://www.npmjs.com/package/ohif-viewer +[configuration-url]: https://deploy-preview-398--ohif.netlify.com/essentials/configuration.html +[extensions-url]: https://deploy-preview-398--ohif.netlify.com/advanced/extensions.html + +[react-viewer]: https://github.com/OHIF/Viewers/tree/react + +[bugs]: https://github.com/OHIF/Viewers/labels/bug +[requests-feature]: https://github.com/OHIF/Viewers/labels/enhancement +[good-first-issue]: https://github.com/OHIF/Viewers/labels/good%20first%20issue +[google-group]: https://groups.google.com/forum/#!forum/cornerstone-platform + + ### Demos [OHIF Viewer](http://viewer.ohif.org/) - A general-purpose radiology viewer with a variety of tools exposed. From 22e32bc1c7b031c4b5deb3c878ca7ba5378c09cb Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:03:31 -0400 Subject: [PATCH 09/11] Simpler getting started; but not advanced scenarios --- README.md | 41 ++--------------------------------------- 1 file changed, 2 insertions(+), 39 deletions(-) diff --git a/README.md b/README.md index 57a995fea..0cc671e93 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,8 @@ yarn install yarn start ``` +For more advanced local development scenarios, like using your own locally hosted PACS and test data, [check out our Essential: Getting Started](https://deploy-preview-398--ohif.netlify.com/essentials/getting-started.html) guide. + ### Contributing @@ -156,42 +158,3 @@ Links: [good-first-issue]: https://github.com/OHIF/Viewers/labels/good%20first%20issue [google-group]: https://groups.google.com/forum/#!forum/cornerstone-platform - - -### Demos -[OHIF Viewer](http://viewer.ohif.org/) - A general-purpose radiology viewer with a variety of tools exposed. - -[Lesion Tracker](http://lesiontracker.ohif.org/) - A prototype viewer focused on oncology metrics. - -Community ---------- - -Have questions? Try posting on our [google groups forum](https://groups.google.com/forum/#!forum/cornerstone-platform). - -### Docker usage -Following the instructions below, the docker image will listen for DICOM connections on port 4242, and for web traffic on port 8042. The default username for the web interface is `orthanc`, and the password is `orthanc`. -#### Temporary data storage -```` -docker run --rm -p 4242:4242 -p 8042:8042 jodogne/orthanc-plugins -```` - -#### Persistent data storage -1. Create a persistant data volume for Orthanc to use - - ```` - docker create --name sampledata -v /sampledata jodogne/orthanc-plugins - ```` - - **Note: On Windows, you need to use an absolute path for the data volume, like so:** - - ```` - docker create --name sampledata -v '//C/Users/erik/sampledata' jodogne/orthanc-plugins - ```` - -2. Run Orthanc from Docker with the data volume attached - - ```` - docker run --volumes-from sampledata -p 4242:4242 -p 8042:8042 jodogne/orthanc-plugins - ```` - -3. Upload your data and it will be persisted From 98cf09835ae5aa1fdb5d621c7c12c4b39415d142 Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:06:09 -0400 Subject: [PATCH 10/11] Point out Viewer architecture --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 0cc671e93..9821df25a 100644 --- a/README.md +++ b/README.md @@ -68,6 +68,8 @@ For more advanced local development scenarios, like using your own locally hoste ### Contributing +> Large portions of the Viewer's functionality are maintained in other repositories. To get a better understanding of the Viewer's architecture and "where things live", read [our docs on the Viewer's architecture](https://deploy-preview-398--ohif.netlify.com/advanced/architecture.html#diagram) + It is notoriously difficult to setup multiple dependent repositories for end-to-end testing and development. That's why we recommend writing and running unit tests when adding and modifying features. This allows us to program in isolation without a complex setup, and has the added benefit of producing well-tested business logic. From b37fd03add421c56077fd673f0c0ca10f39e944a Mon Sep 17 00:00:00 2001 From: dannyrb Date: Thu, 25 Apr 2019 15:12:10 -0400 Subject: [PATCH 11/11] Better description --- README.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9821df25a..13d5b095e 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ -# Viewers -This repo contains the OHIF DICOM Viewer and Lesion Tracker, and various shared meteor packages. + + +
+

ohif-viewer

+

ohif-viewer is a zero-footprint medical image viewer. It is a configurable and exstensible progressive web application with out of the box support for PACS like orthanc, dcm4che, and Google's Healthcare API.

+
+