HTML5-based scientific models, visualizations, graphing, and probeware
JavaScript CoffeeScript HTML CSS Ruby GLSL Other
Latest commit 346e02e Aug 31, 2016 @pjanik pjanik committed on GitHub Merge pull request #116 from lepulent/patch-1
Failed to load latest commit information.
developer-doc Update Aug 25, 2016
node-bin Fix hex to Lab color script May 23, 2016
script Fix check-development-dependencies script Nov 12, 2015
src src/locales/es/interactives/oil-and-water.json Aug 30, 2016
test Add "scale" property to MD2D images May 20, 2016
vendor Update lab-grapher (updated dist file) Aug 29, 2016
.gitignore Remove old paths from .gitignore May 19, 2014
.gitmodules Add i18next submodule May 9, 2014
.jshintrc Revert ".jshintrc: set es5: true" Sep 6, 2013
.tm_properties update textmate project properties file Sep 5, 2013
.travis.yml Remove config.yml, use environment variables only Apr 18, 2014
Gemfile try using git instead of grit Mar 12, 2015
Gemfile.lock Update Gemfile.lock file Mar 23, 2015
Guardfile Remove process-interactives.rb script from Guardfile Apr 17, 2014
Makefile latest UglifyJS requires different argument order Mar 11, 2015 add cors support to rack so fonts can be loaded Apr 11, 2014
lab.sublime-project run jshint in Sublime --verbose to get Wxxx codes Oct 30, 2013 Don't display fullscreen button if fullscreen is not available Apr 26, 2016
package.json Don't display fullscreen button if fullscreen is not available Apr 26, 2016

Lab Framework

HTML5-based open source scientific models, visualizations, graphing, and probeware from the Concord Consortium. This framework is deployed in the following places. These sites contain many examples of what it can do:

Setup Development


Setup the local Lab repository for development

  1. Clone the git repository
  2. cd lab
  3. make everything
  4. open another new terminal and run rackup
  5. open http://localhost:9191
  6. (optional) open a new terminal and run guard

It is recommended that you review the initial setup details. They describe what each of the steps above does.

Contributing to Lab

If you think you'd like to contribute to Lab as an external developer:

  1. Create a local clone from the repository located here: This will by default have the git-remote name: origin.

  2. Make a fork of to your account on github.

  3. Make a new git-remote referencing your fork. I recommend making the remote name your github user name. For example my username is stepheneb so I would add a remote to my fork like this:

    git remote add stepheneb
  4. Create your changes on a topic branch. Please include tests if you can. When your commits are ready push your topic branch to your fork and send a pull request.

Automated Browser Testing

Lab framework tests are automated using open source support from BrowserStack and SauceLabs.

For more information, please visit lab-selenium-tests repository.

More Documentation

SVG support is required to run Lab. IE 9+, FF, Chrome, Safari, iOS Safari, Chrome for Android all support SVG