#Clinical Variant Database Rails application for storing and parsing clinical VCF files. Gene annotations can be retrieved via Biomart integration from Ensembl dataset.
##Features
- VCF file upload and parsing.
- Serialised storage of hashed values into postgreSQL Hstore field - allows NoSQL-type unstructured data to be stored within an overall relational database structure (ACID-compliant key/value stores).
- Integration with Biomart (hsapiens_gene_ensembl, omim), other datasets can also be interrogated.
- Integration with Provean (Protein Variation Effect Analyzer) via Mechanize
- Pagination,Search and sorting functionality for Variants, using Ransack and Kaminari.
- Batch update of Gene/Disorder annotation using Sidekick / redis workers.
- Relationships between Samples to reflect parent-offspring by Closure trees.
##Installation
Requires:
Clone the repository to your web server's public directory, initiallizing Git if required;
git init
git clone https://github.com/pasted/clinical_variant_database.git
The config/database.yml file is not included in the repository, the template is included below(along with the increased number of database connections for use with Sidekiq / Redis). Modify to include your database username and password, then save in the config directory.
development:
adapter: postgresql
encoding: utf8
reconnect: false
database: cvd_development
pool: 25
username:
password:
host: localhost
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: postgresql
encoding: utf8
reconnect: false
database: cvd_test
pool: 25
username:
password:
host: localhost
production:
adapter: postgresql
encoding: utf8
reconnect: false
database: cvd_production
pool: 25
username:
password:
host: localhost
Then run the following commands in the app directory;
bundle install
rake db:create
rake db:migrate
rake db:seed
To start the application, first start up Redis by typing the following in the directory that you have installed redis.
redis-server redis.conf
Then start Sidekiq in the application directory
bundle exec sidekiq
More information on Sidekiq can be found on it's homepage. Finally if not using another webserver, such as Apache - start Rails webrick server (in the application directory)
rails s