Afra

TODO

* MIT License.
* If a user tries to visit /#/genome before authenticating herself, she is
  redirected to /#/login.  After successful authentication, she must be
  redirected to /#/genome.  However, at the moment, a user is invariably
  redirected to /#/ afer authentication.
* Prettify 404 page.
* Use ng-src in login.html for images. Same for 404.html, if we have an image
  there.
* DRY the routes.
  * resolve.user, in main.js, could be a service.

* Login
  * Google+ & Twitter login.
  * Login button should authenticate through a provider in a popup.

* Build infrastructure for app/.
  Consider using rake vs grunt.
  * rake (grunt) compile index.html to use version number from bower.json in
    urlArgs.
  * supports asset compilation and minification

* Testing
  * Backend
    * Spec User model.
    * Spec Web  class.
    * rake spec is a stub at the moment. Make it run specs for real once we have
      some.
  * Frontend
    * Use Mocha.
      Never done frontend testing. This might take time.
  * Test reverse proxy, sub-uri deployments.

* Pack API calls into a separate class?
  * Like Rack::Static?
  * Move methods from Web::SessionManager to Web?
* Sequel:
  * Rewrite User & SessionToken models using Sequel
  * Keep database.rb? Probably not.

* Trim base.less? Add all BS components?
* BS responsive design from start?

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Integrate JBrowse.

NOTES

Included for testing.
* MAKER2 generated gene prediction in GFF3 format for two scaffolds of
  fire ant genome.
* Gene prediction for the two scaffolds of fire ant genome in JB/JSON
  format.

localhost:9292/#/genome hosts a working instance of JBrowse with a
navbar on top.
* Compiled JB's CSS into one genome.css. Styles from Dojo libs are
  'imported' from app/src/.
* Copied all images from jbrowse/img have been copied to app/img.

TODO

* Task model.
* GET /task
* Script to populate tasks table from data/ev
* Add Next button at the bottom.  Clicking Next moves to next genomic

* JB shouldn't set page title.
* Remove 'Full View' link.
* Improve styling of tracks.
  This is going to be giganormous amount of work. What I want here is
  ...
  If possible, use fonts-awesome instead of JB's icon set.

* Rewrite JB's Perl scripts in Ruby.
  * contents of data/jb should not be a part of the repository
* Include a BAM file (and data in all formats supported by JB?) for
  testing.

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Load WebApollo.

* Use WA from bbop/jbrowse.
* Make JB/WA work.
* Save a submission, associate task & submission with user.

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>