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!