Build & Publish

Package your extension into a Chrome Web Store-ready ZIP from the Build tab.

Set the version

Open the Build tab. The current manifest version is displayed. Click the version number or a bump shortcut (patch, minor, major) to open the version modal.

Build tab with version bump shortcuts and package buttonVersion modal — type a version or use the bump buttons

Package the ZIP

Click Package extension. The build produces a ZIP in your project's dist/ folder. Build diagnostics show:

  • Total bundle size — keep it under Chrome Web Store limits.
  • Largest generated files — see which surfaces or chunks dominate the bundle.
  • Output file count — how many files were produced.

Protected builds

If a build fails, ChromeShip automatically restores the last working build from a .dist.chromeship-backup folder. Your extension never breaks during development — you can always revert.

Build process

During build, ChromeShip:

  • Injects production environment values into the bundle.
  • Removes chrome_url_overrides from the dev manifest (so your new tab isn't hijacked during development — it is restored in production builds).
  • Strips localhost host permissions and adds the Supabase production URL if configured.
  • Validates permissions against Chrome Web Store policies.

Dev build overlay

During development, a small badge appears in the managed Chromium window: green with "Compiling" during builds, red with "Build error" if a build fails. Click the error badge to see the full build error without switching to the Studio.

Chrome Web Store checklist

  • Set a meaningful version number.
  • Review permissions — keep them minimal.
  • Verify icons (16, 32, 48, and 128 pixels).
  • Test the ZIP by loading it as an unpacked extension in Chrome.
  • Confirm production environment values are set for every required variable.
  • Upload to the Chrome Web Store Developer Dashboard.