#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.gitThe 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: localhostThen run the following commands in the app directory;
bundle install
rake db:create
rake db:migrate
rake db:seedTo start the application, first start up Redis by typing the following in the directory that you have installed redis.
redis-server redis.confThen start Sidekiq in the application directory
bundle exec sidekiqMore 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