Introduction
Extension.dev is the hosted platform that builds a browser extension for every browser it declares, serves shareable previews, promotes releases through channels, and submits to the stores. Reach for it when more than one person, browser or store is involved in shipping your extension.
Quick start
npx extension@latest create my-extension --template=init
cd my-extension
gh repo create my-extension --private --source=. --pushOpen extension.dev/new, sign in with GitHub, and pick the repository. The platform analyzes it and queues a build for every browser the manifest declares. The Quickstart walks every step.
How it works
Two halves. Extension.dev sponsors Extension.js, the open source framework it builds on. Extension.js is create, dev, build, local debugging and the agent bridge. It runs on your machine, needs no account, and is documented at extension.js.org, not here.
Where the platform begins. The platform begins where a token or a session is minted. A thing that works without a workspace is documented on the framework site. A thing that needs a sign-in, an access token or a share link is documented here.
| Extension.js | Extension.dev | |
|---|---|---|
| What it is | Open source framework and CLI | Hosted platform |
| Where it runs | Your machine and your CI | The platform's infrastructure |
| What it does | Compiles, runs and bundles the extension | Builds, promotes releases, shares previews, submits to stores |
| Docs | extension.js.org | This site |
One compiler. Every platform build runs the Extension.js compiler. The platform starts to matter when more than one person, browser or store is involved.
Builds for every browser from one commit. A project builds Chrome, Firefox and Edge artifacts from the same commit, in a build repository the platform owns, so build minutes never burn on your account. Safari builds the same way on a paid plan. See Projects.
Release channels and environments. Every build carries an environment stamp, production or staging. A build promotes through channels, and each channel is bound to one of the two. See Environments and Channels.
Shared previews. A build renders in a browser emulator behind a link. The person who opens it installs nothing. See Share an unpublished build for review.
Store submissions. Chrome Web Store, Firefox Add-ons, Microsoft Edge Add-ons and Safari credentials are entered once per project and reused by every submission. Chrome, Edge and Firefox submissions run on both plans. Safari builds and App Store submissions go together, and they need a paid plan. See Publishing and extension.dev/pricing.
Sign in. The button sits at the right of the nav bar on extension.dev. From a marketing page it lands you in the console, which is the projects surface. From /new or /import it returns you to the page you were on, because those two pages need the session where you stand.
While sign-up is closed. The front door's Create a new extension menu offers Templates, Themes and Subscribe, and never /new. The More from the platform menu beside it lists Code, Inspect, About and founder news.
Reference
| Surface | Use it for | Guide |
|---|---|---|
| console.extension.dev | Projects, builds, releases, store submissions, settings | Projects |
| extension.dev/new | Choose a template, or connect a GitHub repository | Quickstart |
| extension.dev/import | Turn a repository, a template or a generated artifact into a project | Import |
| templates.extension.dev | The full catalog, each template running live in the page | Templates |
| themes.extension.dev | Build a browser theme against Chrome's own color math | Theme builder |
| preview.extension.dev | The door a shared build link opens on | Share a build for review |
<workspace>.extension.dev | The public page for a released build | Public build pages |
| The HTTP API | Builds, promotes and store submissions from CI or a terminal | HTTP API |
@extension.dev/mcp | The same verbs from a coding agent | MCP server |
@extension.dev/skill | Teaching the agent when to use which one | Agent skill |
When it fails
- You are looking for
create,dev,build, or hot reload. That is the framework. The docs are at extension.js.org. - You signed in and the console is empty. A new account starts with a workspace and no projects. Create one from extension.dev/new or connect a repository through Import. If you never reached the console at all, read the next entry first.
- Sign-in ended on
/subscribeinstead of the console. Sign-in is gated during the alpha. An account that is not on the invite list gets no session and lands on/subscribe, which explains why. The console was never opened. - You cannot tell which site documents a feature. Ask whether it needs a session or a token. No: the framework site. Yes: this one.
Next
- Quickstart to get a project building in minutes
- Projects to understand what a project owns
- Import to connect an extension you already have