This is the source code for the Activity Stream project, which replaces the "New Tab" of Firefox with a new design based on rich metadata and browsing behavior.
To install the release version of the add-on, check out Test Pilot.
If you would like to see changes more regularly, you can install the dev build, which is updated on every commit.
If you would like to help localize this project, check out out project on Pontoon.
- Make sure you have Firefox Beta, node 5.0+ and at npm 3.0+ installed.
npm install
npm run once
- You must have at Firefox (45.0+) installed
- node 5.0+, npm 3.0+ (You can install both here)
-
install from pre-builts
-
install from source
git clone https://github.com/mozilla/activity-stream.git cd activity-stream npm install npm run package
Default configuration is in config.default.yml
. Create a file called config.yml
to override any default configuration.
You may run npm run help
to see a description of all commands available, which you can run via npm run [command]
. Here are some important ones:
If you just want to build assets and run the add-on to test it, you may simply run:
npm run once
If you want to watch assets and compile them continuously, you will want to run
npm run start
in one terminal session, and
npm run firefox
to start the add-on. This way, when you make changes to the content-src
folder, they will be reflected immediately without needing to restart the add-on.
Run npm test
to run the tests once. Run npm run help
for more options.
Run npm run benchmark
to run the benchmarks once. See more details for benchmarking the add-on here.
To build the add-on and export the unpacked version to a mozilla-central
directory that shares the same parent as this current directory, run this command:
npm run export
This will first clear out any existing files from mozilla-central/browser/extensions/activity-stream
before copying over the newly built files and optionally patching mozilla-central/browser/extensions/moz.build
to get the add-on built with Firefox. These changes to mozilla-central
are uncommitted and ready for building/testing/committing.
Note: You can create a symlink
to the mozilla-central
repository, e.g.,
ln -s ~/other-located-or-named-mozilla-central ../mozilla-central