fxa-content-server/README.md

3.7 KiB

Firefox Accounts Content Server

Build Status: Travis Build Status: Circle CI Coverage Status

Static server that hosts Firefox Account sign up, sign in, email verification, etc. flows.

Quick Start

Clone the repository, make sure you have required prerequisites installed. Run npm install and npm run start-remote. This will start a local fxa-content-server on http://127.0.0.1:3030 that works with remote Firefox Accounts servers.

If you want to install all Firefox Accounts servers locally follow the instructions on: fxa-local-dev to get a full development setup running. Please note that fxa-local-dev is the preferred way of contributing to Firefox Accounts.

Development Notes

Changes to stylesheets

To have the css resources automatically rebuilt after changes, run grunt sass watch. Now whenever a change is made to the .scss files, the corresponding css resources will be rebuilt.

Changes to scripts and templates

Any changes made to the scripts or the template files will automatically be reflected on page refresh.

Testing

Prerequisites

Setup

To run tests locally with Selenium:

npm test

To change the default auth server edit server/config/*.json on your deployed instance.

{
  "fxaccount_url": "http://your.auth.server.here.org"
}

Note that testing with Selenium via Docker does not work at present, so all testing must be carried out via your normal operating system's npm & Java tooling.

Grunt Commands

Grunt is used to run common tasks to build, test, and run local servers.

TASK DESCRIPTION
grunt build build production resources. See task source for more documentation
grunt clean remove any built production resources.
grunt lint run ESLint, Sass-lint, amdcheck and JSONLint on client side and testing JavaScript.
grunt sass watch rebuild css resources automatically when changes are made to the .scss files (file needs to be saved).
grunt server run a local server running on port 3030 with development resources.
grunt server:dist run a local server running on port 3030 with production resources. Production resources will be built as part of the task.
grunt test run local Intern tests.
grunt version stamp a new minor version. Updates the version number and creates a new CHANGELOG.md.
grunt version:patch stamp a new patch version. Updates the version number and creates a new CHANGELOG.md.

Servers

License

MPL 2.0