/temporary-containers

Firefox Add-on that lets you open automatically managed disposable containers

Primary LanguageJavaScriptMIT LicenseMIT

Temporary Containers Firefox Add-on Build Status Greenkeeper badge

Detailed informations about the Add-on can be found on AMO. There's also this long-read article and some informations are available in the Wiki.

Development

Requirements

  • Clone the repository
  • npm install
  • npm install -g web-ext

Run in Firefox

  • web-ext run -s src
    • starts the default system Firefox, loads the Add-on and watches for changes
    • append -p profilename to start Firefox with a different profile

or

  • Open about:debugging and Load Temporary Add-on which is located in the src directory

Check about:debugging and click Debug under Temporary Container to see the console.

Run the tests

  • Once: npm test - this also shows coverage summary and generates a detailed report to the coverage directory
  • Watcher: npm run test-watch

Release

AMO and GitHub

  • Bump manifest version
  • npm run build
  • Upload zip web-ext-artifact to AMO
  • Download published AMO xpi
  • Create and publish GitHub release with AMO xpi
  • Add new version with link to the GitHub xpi to updates.json
  • Commit and push

Pre-Release on GitHub

  • Set API Key/Secret Env Vars
  • Bump manifest version as beta
  • Commit
  • npm run build-sign (Adds update_url to manifest and reverts with git checkout -- manifest.json)
  • Create and publish GitHub pre-release with generated xpi web-ext-artifact
  • Add new version with link to GitHub xpi to updates.json
  • Commit and push

Libraries

The included SemanticUI and its dependency jQuery are awesome and are used for the preferences&popup UI - though not for the background and contentscript.

Limitations

  • Disabled in "Private Windows" since Firefox doesn't support it
  • Android Support is not possible since Firefox doesn't support it
  • Mouse Clicks:
    • In Combination with Multi-Account Containers: Opening the same link multiple times in quick succession when it's set to "Always open in $Container" will probably not work as expected.
    • Doesn't work on addons.mozilla.org (Firefox prevents content scripts there). If you assign addons.mozilla.org to "Always open in" with Multi-Account Containers you will see unexpected behavior since Add-ons, including Multi-Account Containers, are not allowed to block requests to addons.mozilla.org.
  • In Automatic Mode:
    • "No Container" Alt+N (Tab) and Shift+Alt+C (Window) must open about:blank due to Firefox API limitations and thus the addressbar can't get focus when opening a new "No Container" Tab

License

MIT