Skip to content
Switch branches/tags
This branch is up to date with master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

What is this for?

This project will allow you to build and host your own instance of the MASCP GATOR.



npm install

Configuring data sources

By default, GATOR will try to load data from the local server. If you don't want to do this, you need to unset the MASCP.LOCALSERVER variable in your html files. If you unset this, GATOR will request data from the original data sources all the time.

Loading data from data dumps to host locally

It's possible to load up data directly from a data dump into the database for when you're trying to bootstrap your own install of GATOR

curl --silent '' | bin/data-manager.js --reader MASCP.TairReader
curl --silent '' | bin/data-manager.js --reader MASCP.SnpReader --date 2011/10/20
curl --silent '' | bin/data-manager.js --reader MASCP.InterproReader
curl --silent '' | bin/data-manager.js --reader MASCP.AtChloroReader --date 2011/09/30
curl --silent '' | bin/data-manager.js --reader MASCP.AtPeptideReader
curl --silent '' | bin/data-manager.js --reader MASCP.Pep2ProReader --date 2011/10/03
curl --silent '' | bin/data-manager.js --reader MASCP.GelMapReader --date 2011/09/30
curl --silent '' | bin/data-manager.js --reader MASCP.P3dbReader --date 2011/09/30
curl --silent '' | bin/data-manager.js --reader MASCP.PhosphatReader --date 2011/09/30
curl --silent '' | bin/data-manager.js --reader MASCP.PpdbReader --date 2011/10/04
curl --silent '' | bin/data-manager.js --reader MASCP.RippdbReader
curl --silent '' | bin/data-manager.js --reader MASCP.SubaReader --date 2011/09/30
curl --silent '' | bin/data-manager.js --reader MASCP.RnaEditReader --date 2012/02/15
curl --silent '' | bin/data-manager.js --reader MASCP.ProcessingReader --date 2012/02/15
curl --silent '' | bin/data-manager.js --reader MASCP.UbiquitinReader --date 2012/02/15

If you're loading this on an EC2 instance, you'll need to sudo to do this:

curl --silent ... | sudo -Hu www-data bin/data-manager.js --reader ...

For more options for reading data dump files see

bin/data-manager.js --help

Hosting data

If you have your own dataset you wish to load into the GATOR, specify to load it with this command

cat mydataset.csv | bin/load-csv.js --dataset 'MyDataset' --url '' --color '#ff0000'

For more options for loading data see

bin/load-csv.js --help

Running the server

You can fire up your GATOR server by running


This will open up port 3000 on all interfaces

You can then access your local instance of GATOR at



If you're hacking away on the server, you can take advantage of npm. You'll need to check out the mascp-jstools repository somewhere.

git clone gator
cd gator
npm install
npm link

The npm link symlinks the development directory of mascp-jstools into the global package directory for npm. This means that any project that needs to use mascp-jstools can use the development version. Then, in your gator-data directory, you can install the development version.

cd gator-data
npm link mascp-jstools

Whenever you make any changes to the library, rebuild it and restart the server.

Hosting on EC2

This project is based upon a template for EC2 hosting

  • Less than 15 minutes from start to finish
  • Eligible/compatible with the "AWS Free Usage Tier"
  • Ubuntu Linux
  • High-performance Nginx HTTP server
    • Sensible default configuration (three flavors to chose from)
    • Automatically handles all static file requests
    • Delegates non-static requests to the Node.js web server
  • Git-based deployment
  • Init.d scripts

This template enables a very smooth, simple and scalable workflow

  • When developing locally, the single command bin/gatordata-httpd runs your web server and takes care of serving static files
  • When deploying changes (after a git push), gatordata-update restart deploys changes and restarts services on your server
  • Rolling back the server to an earlier version is a simple as gatordata-update restart v0.1.2

Updating on EC2

If you just want to grab the latest version of the mascp-jstools, but don't want to recompile sqlite, just pull down the latest tarball.

cd /var/gatordata/node_modules/
curl -L '' | sudo -Hu www-data tar zxv --overwrite --transform  's/^[^\/]*/mascp-jstools/'

Here's a guide on getting started with Amazon EC2:

Let's get started! Head over to


Basic GATOR webservice designed to be run on an EC2 instance






No packages published