Skip to content
RoR based mini-PACS system
JavaScript Ruby HTML CSS Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app
config
db
doc
lib
public
script
test
vendor
.gitignore
.project
.ruby-version
Dockerfile
Gemfile
Gemfile.lock
LICENSE
Rakefile
config.ru
docker-compose.yml
readme.md

readme.md

Referral PACS

Ruby on Rails application that when coupled with a dcm4chee archive, provides image storage and coded reporting for chest radiographs.

Features:

  • Provides typical imaging workflow including worklists
  • Fully-coded form for reporting chest radiographs with free text impressions
  • FHIR DiagnosticReport and ImagingStudy GET interfaces
  • PDF report generation is also provided
  • Summary E-mail reporting for a given time period
  • Quality Improvement/Overread support
  • OpenMRS integration for demographic queries

Configuration

Rails stores configuraiton as .yml files in config/ .yml.dist files are provided as a starting point.

database.yml - standard rails database configuration file openmrs.yml - configures the integration with an OpenMRS instance dcm4chee.yml - if you're using a dcm4chee archive to store DICOM data email.yml - e-mail server settings, and distibution lists are defined here

Docker

After cloning the github repo you will need to build your containers.

docker-compose build

Once the containers are successfully built, create the rails configuration files. Minimum required configuration files are database.yml and openmrs.yml.

cp config/database.yml.docker config/database.yml

cp config/openmrs.yml.dist config/openmrs.yml

Next, we can run the rake scripts to create the mysql databases and tables:

docker-compose run web rake db:setup

We can load the database with a small amount of test data as defined in test/fixtures

docker-compose run web rake db:fixtures:load

At this point you should be able to browse to http://localhost:3000/ and login using username: admin and password: password.

The rails console is a particulary helpful tool, which allows you to interactively run rails code against your database.

docker-compose run web rails c

After all of the services are configured, they need to be started with

docker-compose up

FHIR Interface

Authentication is handled via simple API key, whch must be included as x-api-key HTTP header. For production, an IP address range check can also be implemented.

The DiagnosticReport interface supports searching

By Patient

http://localhost:3000/fhir/diagnosticreport?patient=9339MP-4

By Report Creation Date

http://localhost:3000/fhir/diagnosticreport?date=gt2018-04-05

By Report Creation Date Range

http://localhost:3000/fhir/diagnosticreport?date=gt2018-04-05&date=lt2018-09-18

Search Parameters can also be combined

http://localhost:3000/fhir/diagnosticreport?patient=9339MP-4&date=gt2018-04-05

You can’t perform that action at this time.