Skip to content

itmat/collos

Repository files navigation

Collection of Samples (CollOS)


This site is a light-weight LIMS that seeks to provide a solution for as low-friction as possible biomaterial tracking and annotation. The domain problem does not leave you much room to be completely frictionless, but we strive to minimize busy work and maximize utility.

The site itself has documentation on usage, refer to the About and Help pages. This document is mainly concerned about the underlying engineering of the site.

Technologies

The site depends on two core technologies:

For development, you will also need to install GraphViz

brew install graphviz

In particular we are taking advantage of PostgreSQL's native full-text-search capabilities. The Rails engines and plugins are itemized in the Gemfile. Both are discussed below.

Major Application Functionality

There are several major subsystems in CollOS. They are described below.

Environment configuration

We use the configulations gem as a simple method of passing environment variables to the application.

Authentication

Authentication is handled using the Oauth 2 protocal, via OmniAuth gem and the omniauth-basecamp strategy.

Authorization

Authorization uses the CanCan gem.

Background Processing

Background processing is accomplished using Sidekiq

You can see the processing queue and other Sidekiq information in the dashboard at root_url()/sidekiq. Note: you need to be logged in first.

You can find more information about the Sidekiq workers and how to deploy them at the background processing page

PostgreSQL and Full Text Search

TODO: finish this section

INSTALL

Like you would any other Rails application.

cd $RAILS_ROOT
bundle

Then make sure Postgres and redis are running, etc.

Rails Plugins

We use a few rails plugins in this app

Doorkeeper

Ancestry

About

CollOS : Collection Of Samples - a lightweight biobanking tool

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published