All Projects → griffithlab → civic-server

griffithlab / civic-server

Licence: MIT license
Backend Server for CIViC Project

Programming Languages

HTML
75241 projects
ruby
36898 projects - #4 most used programming language
javascript
184084 projects - #8 most used programming language
CSS
56736 projects
python
139335 projects - #7 most used programming language
perl
6916 projects

Projects that are alternatives of or similar to civic-server

civic-client
Web client for CIViC: Clinical Interpretations of Variants in Cancer
Stars: ✭ 49 (+25.64%)
Mutual labels:  civic, cancer, variants, cancer-genomics, nci-itcr
cacao
Callable Cancer Loci - assessment of sequencing coverage for actionable and pathogenic loci in cancer
Stars: ✭ 21 (-46.15%)
Mutual labels:  cancer, cancer-genomics
TeamTeri
Genomics using open source tools, running on GCP or AWS
Stars: ✭ 30 (-23.08%)
Mutual labels:  variants, cancer-genomics
SlicerRadiomics
A Slicer extension to provide a GUI around pyradiomics
Stars: ✭ 83 (+112.82%)
Mutual labels:  cancer, nci-itcr
cpsr
Cancer Predisposition Sequencing Reporter (CPSR)
Stars: ✭ 44 (+12.82%)
Mutual labels:  cancer, cancer-genomics
SCICoNE
Single-cell copy number calling and event history reconstruction.
Stars: ✭ 20 (-48.72%)
Mutual labels:  cancer-genomics
SigProfilerMatrixGenerator
SigProfilerMatrixGenerator creates mutational matrices for all types of somatic mutations. It allows downsizing the generated mutations only to parts for the genome (e.g., exome or a custom BED file). The tool seamlessly integrates with other SigProfiler tools.
Stars: ✭ 68 (+74.36%)
Mutual labels:  cancer-genomics
superacao-app
Aplicativo para o projeto "Anjos do SuperAção"
Stars: ✭ 17 (-56.41%)
Mutual labels:  cancer
styled-variants
A scalable styled-component theming system that fully leverages JavaScript as a language for styles authoring and theming at both local and global levels.
Stars: ✭ 19 (-51.28%)
Mutual labels:  variants
CuteVCF
simple viewer for variant call format using htslib
Stars: ✭ 30 (-23.08%)
Mutual labels:  variants
Harbol
Harbol is a collection of data structure and miscellaneous libraries, similar in nature to C++'s Boost, STL, and GNOME's GLib
Stars: ✭ 18 (-53.85%)
Mutual labels:  variants
EosProxyServer
A full-functional backend server of EOS wallet.
Stars: ✭ 36 (-7.69%)
Mutual labels:  backend-server
ci4cc-informatics-resources
Community-maintained list of resources that the CI4CC organization and the larger cancer informatics community have found useful or are developing.
Stars: ✭ 22 (-43.59%)
Mutual labels:  cancer
recursive-variant
Recursive Variant: A simple library for Recursive Variant Types
Stars: ✭ 67 (+71.79%)
Mutual labels:  variants
deTiN
DeTiN is designed to measure tumor-in-normal contamination and improve somatic variant detection sensitivity when using a contaminated matched control.
Stars: ✭ 46 (+17.95%)
Mutual labels:  cancer-genomics
rvtests
Rare variant test software for next generation sequencing data
Stars: ✭ 114 (+192.31%)
Mutual labels:  variants
ACCESS-NYC-PATTERNS
ACCESS NYC Pattern library and design system documentation for https://access.nyc.gov. Maintained by @NYCOpportunity
Stars: ✭ 14 (-64.1%)
Mutual labels:  civic
json-fake-server
Simple way to create http server (node js) https://www.npmjs.com/package/test-fake-server
Stars: ✭ 15 (-61.54%)
Mutual labels:  backend-server
pulsar-core
🚀 Handy dynamic styles utilities for React Native and React Native Web.
Stars: ✭ 27 (-30.77%)
Mutual labels:  variants
npm-civic-sip-api
Node.js client library for the Civic Secure Identity Platform (SIP).
Stars: ✭ 25 (-35.9%)
Mutual labels:  civic

CIViC - Clinical Interpretations of Variants in Cancer

Code Climate DOI

This repository contains the server component of the CIViC. It is a Ruby on Rails application that serves JSON data to power the frontend website and API.

Setup

Developing for CIViC involves setting up a development environment.

To get started quickly, we recommend launching an AWS EC2 instance from our pre-configured and maintained AMI (getting started wiki page). Alternatively, you may set up your own local development environment using the following setup instructions.

Prerequisites

Before attempting to install the CIViC server and client software, you should obtain the following applications and libraries:

  • A relatively modern Ruby (>= 2.1)
    • If your OS doesn't ship with a modern Ruby, you can use rbenv and ruby-build to obtain it.
  • Postgres
  • NodeJS
  • npm
  • libxml2
  • libxslt
  • libpq-dev
  • openssl

On OSX with homebrew, this should install the needed library dependencies:

brew install libxml2 libxslt openssl postgres node

Installation

The following will set up the server side application and load the database schema.

git clone https://github.com/griffithlab/civic-server.git
cd civic-server
gem install bundler
rbenv rehash
bundle install
rbenv rehash
rake db:create
rake db:migrate

For convenience, a sanitized version of a recent database backup is provided for your local development environment. You can load it with the following command:

rake civic:load[force]

Finally, start the CIViC rails server

rails s

If you only intend to do server development, you can stop here. The server repository already contains the most recent production build of the frontend javascript. You can load CIViC in your browser at http://127.0.0.1:3000.

If you intend to develop front end features however, you'll need to set up the client side application using the following:

git clone https://github.com/griffithlab/civic-client.git
cd civic-client
npm install -g bower gulp
npm install
bower install
gulp serve

You should now be able to access the backend server at http://127.0.0.1:3000 and the frontend application at http://127.0.0.1:3001

Note that certain tasks needed by a running instance of CIViC are accomplished by 'background workers'. This includes data release generation as well as notification delivery.

You can start the workers in the background with the following command:

bin/delayed_job start 

If you would prefer the workers to run in the foreground you can start them in a console (rails c) with this command instead:

Delayed::Worker.new.start

Note to make yourself an admin in a local install you can do the following from your civic-server repo. First log into the front end http://127.0.0.1:3001 and sign in with your user. Log into a rails console, run a command that makes you an admin in the db, and exit.

rails c
User.find_by(email: '[email protected]').make_admin!
exit

Now log into the backend admin interface as follows: http://127.0.0.1:3000/admin

Git repositories related to the CIViC project

The CIViC source code and application are organized in a client-server model. The backend code is available in the civic-server repository and frontend code is available in the civic-client repository. Issues relating to curation are tracked in the civic-curation repository. An example of a Python client is available in the civic-api-client repository. Issues relating to public CIViC meetings are tracked in the civic-meeting repository.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].