Skip to content
Webmaker is Mozilla's project to teach the web
HTML CSS JavaScript
Latest commit c2c1e90 @Pomax Pomax 1.1.158
Failed to load latest commit information.
less Merge pull request #1435 from Pomax/badgedeprecation
lib add mofo-style
locale Merge pull request #1435 from Pomax/badgedeprecation
public Remove profile link html and JS
routes Redirect home page to & some clean-up
test removing event guides and forwarding to event guides in events2
views Merge pull request #1435 from Pomax/badgedeprecation
.gitignore Bug 1013444 - Switched angular to html5 mode, moved public_angular in…
.jsbeautifyrc Bug 1013444 - Switched angular to html5 mode, moved public_angular in…
.jshintrc Bug 1021762 - Update to use isSuperMentor, not isCollaborator
.no-cache Bug 1049943 - Reland Webmaker Login 3.0
.travis.yml Bug 960687 - Stop TravisCI testing with node v0.8 tweaking grunt task naming; adding CONTRIBUTING guidelines
Gruntfile.js add mofo-style
LICENSE.txt Review fixes
Procfile NOBUG Added Procfile Update readme
angular-i18n-ignoreKeys.json Fix spacing and grunt failing
app.js Redirect home page to & some clean-up
bower.json v1.1.157
cluster.js Revert "Bug 914185 - Switch to use Webmaker Butler r=cad…
env.dist Rebase of 17 commits:
gtf-ignored-keys.json Some goggles landing fixes.
navigation.json upgrade font awesome
package.json 1.1.158

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" ]'
Something went wrong with that request. Please try again.