npm install
npm run start # dev watch
npm run build # prod build (development endpoint)
npm run build:test
npm run build:prod- Run
npm run buildto generatedist/. - Open
chrome://extensions. - Enable Developer mode (top right).
- Click "Load unpacked" and select this folder.
- The popup loads from
popup.html, scripts fromdist/.
You need a ZIP of the extension directory (no node_modules, sources compiled to dist/). Use the script below:
# Default: production endpoint
./scripts/package.sh
# Or choose env explicitly: development | test | production
./scripts/package.sh productionThis creates release/<name>-<version>-<env>.zip ready for upload.
- Create a developer account at the Chrome Web Store Developer Dashboard.
- Click "New Item" and upload the ZIP from the
release/folder. - Fill in listing details, privacy, and permissions justification.
- Submit for review.
- "tabs", "storage"
- Host permissions:
<all_urls>
- Popup UI and content script are ported from the Firefox example.
ENDPOINTis injected via Webpack DefinePlugin from theENDPOINTenvironment variable (optional). If not set, it defaults to an empty string.- Uses Tailwind via PostCSS at build time; styles are injected by style-loader.