Ensemble is the platform that powers the Firefox Public Data Report, a weekly public report on the activity, behavior, and hardware configuration of Firefox Desktop users.
Ensemble fetches data from ensemble-transposer, a JSON server that adds metadata to the raw data hosted by Mozilla data engineers.
Ensemble is written in React with the help of the wonderful create-react-app tool from Facebook. See the create-react-app documentation for more information. Some highlights and some additional information are provided here.
Any of the environment variables in .env can be overridden. For example:
REACT_APP_SITE_TITLE='Firefox Public Lore Report' npm start
Any of the environment variables in .env can be overridden.
npm test to run Jest, Nightwatch, and ESLint tests locally.
Nightwatch tests can optionally be run against the staging and production sites.
npm run test:nightwatch:stage or
npm run test:nightwatch:prod
npm run size.
We maintain a version number for this project. We try to update it when we deploy new code. The version number is specified in package.json.
The number looks like a semantic version number, but semver isn't suitable for applications. We instead follow this basic guideline: the first number is incremented for major changes, the second number is incremented for medium changes, and the third number is incremented for small changes.