HTML JavaScript CSS
Latest commit 3a12021 Mar 17, 2016 @cadecairos cadecairos Update
Failed to load latest commit information.
.no-cache Bug 1049943 - Reland Webmaker Login 3.0 Dec 15, 2014
Procfile Update Mar 17, 2016
app.js old linting rules no longer exist Feb 23, 2016
bower.json v1.1.157 Sep 15, 2015
gtf-ignored-keys.json Some goggles landing fixes. Feb 6, 2015
package.json less-middleware Feb 23, 2016

This project is no longer under active development.

Read about why, here:

Build Status Dependency Status Code Climate

TLDR; if you've done this before


  1. git clone
  2. npm install
  3. cp env.dist .env
  4. grunt dev (Builds front end js. If you aren't working on front end assets you can just do node app)

Submitting PRs

  1. grunt (validate and compress images)
  2. Make a pull request against mozilla/master

New Contributors

Please review our contributing guidelines here.


The setup portion of this README assumes you have the following installed:

  • Node.js & npm
  • Bower: npm install -g bower
  • grunt-cli: npm install -g grunt-cli

You should also have these Webmaker stack applications running:

Project Setup

  1. Clone and enter the directory: git clone && cd
  2. Install's Node and Bower dependencies: npm install
  3. Copy the configuration template to its expected location: cp env.dist .env
  4. Open .env in your favourite text editor and ensure that your PORT, MAKE_ENDPOINT, LOGIN and LOGINAPI environment variables are set to the correct values. PORT can be any available port. MAKE_ENDPOINT, LOGIN and LOGINAPI should point to the URL of your running MakeAPI and Webmaker Login service instances.
  5. Run grunt dev, and open up http://localhost:7777/ in your favourite web browser!

Grunt Tasks

  • grunt - Validate LESS, beautify and lint JS, compress images as needed. Run before you push.
  • grunt dev - Run the server and build js files as they are changed
  • grunt verify - Verify LESS and JS are formatted and lint free. Read only. Used by Travis.


To add a new language simply add a directory with a locale code under the locale directory with a JSON file(s) for your strings for example: locale/id_ID/strings.json

You also need to make sure you enable the language in your config by changing the value of SUPPORTED_LANGS

  export SUPPORTED_LANGS='[ "en", "id-ID" ]'