Skip to content

Start here

ExtensionStart is a paid starter kit for monetized browser extensions. You clone a private repo, and four steps take you to a live store listing:

Four steps: create your extension, connect Firebase, connect Stripe, publish to the Chrome Web Store.1Createpnpm create extstart2Connect Firebasepnpm create extstart --firebase3Connect Stripepnpm seed:stripewebhook, deploy, doctor4Publishpnpm zip+ store uploadConsole steps (sign-in providers, Blaze plan, OAuth client) are deep-linked when a stage needs them.

Along the way you’ll need three accounts: Google (for Firebase), Stripe, and a Chrome Web Store developer account ($5, once). Each step tells you when.

The wizard asks how you want to charge. All four models ship ready to seed into Stripe:

Subscription

Monthly and yearly plans plus a lifetime tier, with an optional free trial. The default.

Lifetime

One payment, access forever. Good for tools without running costs.

Subscription + credits

A monthly credit allowance plus top-up packs. The model AI tools use: heavy users pay more.

Credit packs

Prepaid credits, no subscription. Pay again only when they run out.

Your choice sets the pricing UI, the Stripe products, and the paywall behavior. These are presets, not constraints: plans live in one config array, and any mix of recurring and one-time prices works. See Payments and Credits.

The docs walk the same path as five steps. Each ends with something you can verify on screen:

  1. Run it: clone, wizard, extension loaded in Chrome. No backend needed yet.
  2. Connect sign-in: point the kit at your Firebase project and sign in for real.
  3. Take payments: Stripe in test mode, ending with a checkout that flips your popup to premium.
  4. Build your feature: where your code goes, and the 2-file edit that makes it paid.
  5. Ship it: the Chrome Web Store submission runbook.

Three deployable parts, one wizard behind them all:

The ExtensionStart big picture: the create-extstart wizard configures your extension, your backend, and your website; the extension ships to the Chrome Web Store and the backend takes Stripe payments.Chrome Web StoreStripe paymentsYour extensionpopup · content UI · backgroundYour backendauth · entitlements · creditsone Cloud FunctionYour websitelanding · privacycreate-extstart wizard
  • The extension: popup, side panel, welcome tour, and in-page UI, built on MV3-safe patterns and covered by 350+ tests.
  • The backend: one Cloud Function that decides who paid, with sign-in, Stripe checkout, and webhooks included. The extension never holds a secret.
  • The website: an Astro landing page plus the privacy and terms pages the Chrome Web Store requires.

For the full map of the repo, see the Repo tour.