Framework
Workflows
Submission

Submit Your Extension

The Plasmo Framework ships with a convenient GitHub action called Browser Platform Publish (opens in a new tab) or BPP. This action will automatically publish your extension to all supported browser extension stores. It runs on a manual trigger by default, but changing its config can make it run on every push.

To start publishing your Plasmo extension, set up a keys.json file with the following schema:

{
  "$schema": "https://raw.githubusercontent.com/PlasmoHQ/bpp/v3/keys.schema.json"
}

This schema is helpful if your editor supports JSON schema (opens in a new tab). Make sure to only declare valid submission credentials. Otherwise, the action will fail.

🙆‍♀️

NOTE: git ignores this file thanks to our friendly neighborhood .gitignore

Check out our token guide (opens in a new tab) to learn more about the tokens required to submit.

The final key might look like this:

{
  "$schema": "https://raw.githubusercontent.com/plasmo-corp/bpp/v3/keys.schema.json",
  "chrome": {
    "clientId": "123",
    "refreshToken": "789",
    "extId": "abcd",
    "clientSecret": "efgh"
  },
  "edge": {
    "clientId": "aaaaaaa-aaaa-bbbb-cccc-dddddddddddd",
    "clientSecret": "abcdefg",
    "productId": "aaaaaaa-aaaa-bbbb-cccc-dddddddddddd",
    "accessTokenUrl": "https://login.microsoftonline.com/aaaaaaa-aaaa-bbbb-cccc-dddddddddddd/oauth2/v2.0/token"
  }
}

Copy this key, and add it as a repository secret on GitHub (opens in a new tab) called SUBMIT_KEYS

Then, go on GitHub and trigger the action manually when you need to submit a new extension version!