Gee Fu is an application that holds Gene Feature data. It has been designed with the needs of researchers wanting to keep, share and annotate sequence and feature data. Gee Fu is a Ruby on Rails based RESTful web-service application that stores and serves sequence assembly and genome feature data on request.
GeeFu can be used as a base that can be easily extended into fuller customised web-applications using the powerful Rails framework.
Gee Fu is ideally suited to serving large amounts of data such as those from high-throughput sequencing experiments via bio-samtools and BAM files.
Gee Fu is capable of receiving and handling requests from AnnoJ , a web service based viewing engine for genomic data. It can return JSON data which AnnoJ is able to render. We anticipate being able to serve up data in formats suitable for different applications as development progresses and we become aware of other rendering engines and web services that request data.
YellowRust (Available Soon)
- Install Docker
- Get the Dockerfile:
wget(or)curl https://raw.github.com/wookoouk/gee_fu/master/Dockerfile
- Build the container:
docker build .
- Run the image:
docker -t geefu /opt/geefu/start
You can install GeeFu almost anywhere, on a local machine, VM or in then cloud, below are a few recommendations:
- Linode - Cheep($20 p/m) hosting, very easy to set up.
- AWS - Cheep (free option available), not so easy to set up.
- Heroku - Cheep (free option available), easy to setup
- VirtualBox - Run the site from your local machine, for testing.
Windows (Coming Soon!)
- Clone the GeeFU repo:
git clone git://github.com/wookoouk/gee_fu.git geefu
- Go into geefu folder:
cd geefu
- Accept the .rvmrc as trusted
- Install bundler
gem install bundler
- Set up the repo
bundle install
- Sign up for a Mandrill account and grab an API key
- Create a .env file in the root folder with:
EMAIL_SENDER=My Name <me@example.com>
MANDRILL_USERNAME=me@example.com
MANDRILL_APIKEY=[insert API key]
- Update 'config.action_mailer.default_url_options' inside 'config/environments/development.rb' to reflect your sites base URL.
- Create a Postgres user called gee_fu with no password
- Change the attributes of Postgres user gee_fu to allow database creation
ALTER USER gee_fu CREATEDB;
- Run
rake db:setup
- Follow the instructions at README_FOR_DATA.mdown
- Start the gee-fu server with
foreman start
- Visit http://localhost:5000
- Once you've signed up as the first user use
rake admin:set email=me@example.com
to set your account as an admin to be able add Organisms
bundle exec rails server
foreman start
The following is added to the Apache2/Httpd conf to route to WebApollo
ProxyRequests Off
ProxyPass /WebApollo http://localhost:8080/WebApollo
ProxyPassReverse /WebApollo http://localhost:8080/WebApollo
Ubuntu/Debian:
sudo /etc/init.d/httpd/restart
Centos:
sudo /etc/init.d/apach2/restart
OSX:
sudo /usr/sbin/apachectl restart