Firefox Multi-Account Containers lets you keep parts of your online life separated into color-coded tabs that preserve your privacy. Cookies are separated by container, allowing you to use the web with multiple identities or accounts simultaneously.
Find a file
2017-03-30 14:40:33 -05:00
bin fix #162: bin/build-addon.sh automates txp deploys 2017-02-22 17:20:37 -08:00
data Hide non container icon in URL bar. Fixes #281 2017-02-28 00:00:41 +00:00
docs fix #209: page-requests-completed-per-tab metric 2017-03-30 14:40:33 -05:00
test Add ESLint no-var and prefer-const rules 2017-01-16 16:33:12 -08:00
webextension fix #209: page-requests-completed-per-tab metric 2017-03-30 14:40:33 -05:00
.env update README to be current 2017-01-05 16:40:25 -06:00
.eslintignore for #117: start telemetry with testpilot-metrics 2017-02-14 09:29:36 -06:00
.eslintrc.js Rename linter used to check for unsafe 2017-03-15 06:34:31 +00:00
.gitignore fix #162: bin/build-addon.sh automates txp deploys 2017-02-22 17:20:37 -08:00
.htmllintrc Adding in CSS and HTML linting. Fixes 72 2017-01-30 16:02:26 +00:00
.jpmignore Merge pull request #292 from bakulf/context 2017-02-28 20:07:26 +01:00
.stylelintrc Update stylelint rules. Fixes #230 2017-02-22 16:09:55 -08:00
.travis.yml add irc notifications for Travis CI builds 2017-03-06 20:30:04 +00:00
icon.png for #5: start browser action UI 2016-12-20 11:05:37 -06:00
index.js Fix upgrading issue whilst also ensuring dead objects won't happen. #373 2017-03-14 19:13:13 +00:00
LICENSE.txt License added 2017-01-13 11:48:01 +01:00
package.json Rename linter used to check for unsafe 2017-03-15 06:34:31 +00:00
README.md Update README.md 2017-03-08 20:39:00 -08:00
testpilot-metrics.js for #117: add testpilot-metrics.js 2017-02-13 10:19:05 -06:00

Containers: Test Pilot Experiment

Available on Test Pilot

Embedded Web Extension to experiment with Containers in Firefox Test Pilot to learn:

  • Will a general Firefox audience understand the Containers feature?
  • Is the UI as currently implemented in Nightly clear or discoverable?

See the Product Hypothesis Document for more details.

Requirements

  • node 7+ (for jpm)
  • Firefox 51+

Run it

See Development

Development

Development Environment

Add-on development is better with a particular environment. One simple way to get that environment set up is to install the DevPrefs add-on. You can make a custom Firefox profile that includes the DevPrefs add-on, and use that profile when you run the code in this repository.

  1. Make a new profile by running /path/to/firefox -P, which launches the profile editor. "Create Profile" -- name it whatever you wish (e.g. 'addon_dev') and store it in the default location. It's probably best to deselect the option to "Use without asking," since you probably don't want to use this as your default profile.

  2. Once you've created your profile, click "Start Firefox". A new instance of Firefox should launch. Go to Tools->Add-ons and search for "DevPrefs". Install it. Quit Firefox.

  3. Now you have a new, vanilla Firefox profile with the DevPrefs add-on installed. You can use your new profile with the code in this repository like so:

Beta building

To build this for 51 beta just using the downloaded version of beta will not work as XPI signature checking is disabled fully.

The only way to run the experiment is using an unbranded version build or to build beta yourself:

  1. Download the mozilla-beta repo
  2. Create a mozconfig file - probably optional
  3. cd <reponame>
  4. ./mach bootstrap
  5. ./mach build
  6. Follow the above instructions by creating the new profile via: ~/<reponame>/obj-x86_64-pc-linux-gnu/dist/bin/firefox -P (Where "obj-x86_64-pc-linux-gnu" may be different depending on platform obj-...)

Run with jpm

  1. git clone git@github.com:mozilla/testpilot-containers.git
  2. cd testpilot-containers
  3. npm install
  4. ./node_modules/.bin/jpm run -p /Path/To/Firefox/Profiles/{junk}.addon_dev -b FirefoxBeta (where FirefoxBeta might be: ~//obj-x86_64-pc-linux-gnu/dist/bin/firefox or ~//firefox)

Check out the Browser Toolbox for more information about debugging add-on code.

Building .xpi

To build a local .xpi, use the plain jpm xpi command.

Signing an .xpi

To sign an .xpi, use jpm sign command.

Note: You will need to be an author on the AMO add-on.

Testing

TBD

Distributing

TBD