Local Development
Prerequisites
Clone & Install
git clone https://github.com/cybersader/stashbridge.gitcd stashbridgebun installProject Structure
stashbridge/├── packages/extension/ # WXT + Svelte 5 + Tailwind CSS├── packages/worker/ # Cloudflare Worker + D1└── packages/docs/ # Astro Starlight docs siteExtension Development
cd packages/extensionbun run dev # Dev mode with hot reload (Chrome)bun run dev:firefox # Dev mode (Firefox)bun run build:chrome # Production build (Chrome)bun run build:firefox # Production build (Firefox)bun run zip:chrome # Build + zip for Chrome Web Storebun run zip:firefox # Build + zip for Firefox AMObun run dev opens a browser window with the extension loaded and hot-reloading enabled.
Worker Development
cd packages/workerbun run dev # Local dev server (wrangler dev)bun run deploy # Deploy to Cloudflarebun run migrate:local # Run D1 migrations locallybun run migrate:remote # Run D1 migrations on productionDocs Development
cd packages/docsbun run dev # Local dev server with hot reloadbun run build # Production buildbun run preview # Preview production build locallyLoading the Extension (Developer Mode)
Chrome / Edge / Brave
- Build:
cd packages/extension && bun run build:chrome - Go to
chrome://extensions - Enable Developer mode (top right)
- Click Load unpacked
- Select
packages/extension/.output/chrome-mv3/
After Rebuilding
After pulling changes and rebuilding, go to chrome://extensions and click the reload icon on the StashBridge card. No need to remove and re-add.
Firefox
- Build:
cd packages/extension && bun run build:firefox - Go to
about:debugging#/runtime/this-firefox - Click Load Temporary Add-on
- Select
manifest.jsoninpackages/extension/.output/firefox-mv3/
Note: Firefox temporary add-ons are removed when you close the browser.