Browser extension framework built on Rsbuild
Addfox wraps Rsbuild (Rspack/Rstack) with extension-specific plugins; build output is loaded in Chrome or Firefox.
- π₯ Fast dev + HMR β
addfox devwatches files, rebuilds on change, and hot-reloads the extension. - π¦ Zip on build β
addfox buildoutputs extension files and a store-ready zip in.addfox. - π File-based entries β Auto-discovers entries from
app/(background/content/popup/options/sidepanel/devtools) with custom entry support. - π Cross-browser targets β
-bsupports Chromium browsers and Firefox with browser-specific manifest overrides. - βοΈ Framework-agnostic β Works with Vue, React, Svelte, Solid, or vanilla (TS/JS).
- π€ AI-friendly debugging β
--debugshows per-entry runtime errors in terminal. - π§ͺ Built-in testing flow β
addfox testforwards args to Rstest for unit and e2e workflows. - π Rsdoctor reports β Add
--reportin dev/build to generate bundle analysis. - π§© Skills integration β Supports addfox/skills via scaffold or
skills add. - π Env control β Loads
.envand exposes vars viaenvPrefixrules.
New project:
pnpm create addfox-app
# or: npx create-addfox-appChoose framework (Vanilla / Vue / React / Preact / Svelte / Solid), language, package manager, entries, and optional Skills. A full layout and addfox.config are generated.
Existing project:
pnpm add -D addfoxAdd addfox.config.ts (or .js / .mjs) in the project root and entries under app/ (or appDir). Then:
addfox devβ dev with watch + HMRaddfox buildβ output to.addfox/extension(and optional zip)
Use -b chrome or -b firefox to target a browser.
Full docs, config reference, and examples: https://addfox.dev
Skills (AI workflow modules): https://github.com/addfox/skills

