Scat: a Simple caTissue application
Git: http://github.com/caruby/scat
Author: OHSU Knight Cancer Institute
Copyright: 2012
License: MIT License
Synopsis
Scat is a light-weight caRuby Tissue web application.
Features
Create tissue specimens in caTissue.
Create the specimen subject, registration and collection group as necessary.
Auto-complete the diagnosis and tissue site.
Authorize the user.
One small edit page to rule them all.
Dynamically responds to tablet and even smartphone devices.
Simple edit form configuration.
Leverage the caRuby declarative API.
Requirements
The current Scat release only runs on Linux.
Installation
Scat is installed on a caTissue server as a JRuby gem:
sudo jgem install caruby-scat
See the caRuby Tissue FAQ for configuring the caTissue API client.
The log file is /var/log/scat.log
. Ensure that the /var/log
directory is writable
by the Linux user which starts Scat. The preferred Linux way to do this is to make /var/log
owned and writable by the adm
group and add the user to that group.
Usage
Execute
scat
in a console to start Scat.Open a web browser on
http:://server:4567/
, where server is the name of your server.Scat starts on the specimen edit page (see the screen shot below). Hover over the edit form entry question mark to describe the field. Enter values for each field.
Enter five or more letters in the Diagnosis or Tissue Site and wait briefly to bring up a list of matching caTissue values.
Press the Submit button to create a new specimen.
The Diagnosis and Tissue Site term => controlled value matches are cached locally and persistently. Subsequent term auto-completion is very fast.
Within a session, the first save takes a while to find the Collection Protocol, Site and other information. Subsequent saves are faster. Successive creation of new specimens for the same patient and pathology report are considerably faster.
Screen Shot:
Customization
Scat is a reference implementation which captures minimal specimen information. Adding edit fields is done in a single simple text configuration file.
There are two ways to enhance Scat for your own site:
The quick-and-dirty approach:
- Edit the following file:
jgem environment gemdir</code>/gems/caruby-scat*/conf/fields.yaml
Add or remove fields to display.
Refresh the Scat edit page.
The safe-and-sane approach:
Install git on your workstation if necessary.
Make a workspace directory on your workstation.
From that directory, execute the following:
git clone git://github.com/caruby/scat.git
Modify the
conf/fields.yaml
configuration file to add edit fields.Modify the
scat/public/stylesheets/scat.css
file to change the web display.Add views and routes to this Sinatra application as you see fit.
Run Scat with your changes by executing the following in the workspace
scat
directory:
rackup
See your changes by opening a web browser on
http://localhost:4567/
.When you are satisfied with the changes, bump the version number in the
lib/scat/version.rb
file by appending a branch number, e.g. change the base version1.2.2
to1.2.2.1
.Package your changes by executing the following:
rake gem
Copy the resulting gem file to your server.
On the server, install the new gem, e.g.:
gem install caruby-scat-1.2.2.1.gem
You can proudly share your changes with the world by forking the Scat repository:
Register for a GitHub account, if you don't already have one.
Navigate to the Scat repository.
Press the Fork button in the upper right.
Fork the repository to your GitHub account.
Set the git origin in your workstation
scat
directory, e.g.:
git config --replace-all remote.origin.url [email protected]:mygitaccount/scat.git
Commit the changes to your local git repository.
Push the changes to your fork with the command:
git push origin master
Your GitHub fork is publicly visible. You can see other Scat forks by searching on the
term scat
in GitHub.