Addfox 0.2.0: Architecture Refactoring & Dependency Slimming
May 25, 2026
We are excited to share the latest progress on the Addfox framework. Version 0.2.0 is now officially released, featuring a significant architecture refactoring. This update focuses on three core goals: reducing dependencies, replacing black-box tools with built-in alternatives, and improving the developer experience for browser extension development.
Dependency Slimming & Supply Chain Security
One of the most impactful changes in this refactoring is the aggressive removal of third-party dependencies that carried large transitive trees. Every external dependency is a potential supply-chain risk—whether through deprecation, malicious takeover, or breaking changes in transitive packages. By replacing large third-party tools with focused, built-in utilities, we have drastically shrunk the attack surface for Addfox users.
Here is what we removed:
web-ext(~586 KB + 26 transitive deps) — completely removed.chrome-launcher— removed.archiver(~40 KB + 9 transitive deps) — replaced with a built-in zip alternative.cli-table3(~46 KB + 1 transitive dep) — removed from@addfox/core.chalk(~44 KB),kolorist,minimist— removed fromcreate-addfox-appand replaced with lightweight built-in utilities.
The result? The pnpm-lock.yaml shrank by approximately 2,156 lines, meaning faster installs, smaller node_modules, and fewer supply-chain risks for end users.
Before vs. After: Third-Party Runtime Dependencies
What remains? Only two mature, tiny third-party runtime dependencies:
jiti— a lightweight TypeScript config loader (~50 KB, zero transitive deps).prompts— a minimal CLI prompt library (~30 KB, zero transitive deps).
Everything else is either internal (@addfox/*) or handled by the build toolchain (@rspack/core as a dev dependency).
Introducing @addfox/launcher
Previously, Firefox development relied on web-ext run, a powerful tool with heavy dependencies. We have built @addfox/launcher from the ground up:
- Zero runtime dependencies.
- Unified support for Chromium (Chrome, Edge, etc.) and Gecko (Firefox, Zen, etc.).
- Firefox HMR now uses the RDP protocol to reload temporary add-ons directly, eliminating the need for
web-ext's complex process management. - Removed compatibility files such as
web-ext.d.ts,web-ext-logger.d.ts, andweb-ext-console-stream-hook.ts.
This makes the dev server faster to start, easier to debug, and fully under our control.
HMR Plugin Refactoring
The @addfox/rsbuild-plugin-extension-hmr package saw the largest code reduction:
launcher.tsandrunner.tswere heavily simplified after droppingweb-ext.- The extension manager now handles profile directories and reload logic more cleanly.
- Keyboard reload and WebSocket server paths were streamlined.
Overall, the workspace diff shows roughly 50 files changed, with a net reduction of ~1,641 lines of code—less code to maintain, fewer edge cases, and better reliability.
Enhanced Test Coverage
We did not just delete code; we also invested in quality:
rsbuild-plugin-extension-entry: +260 lines of testsrsbuild-plugin-extension-hmr: +114 lines of testsrsbuild-plugin-extension-manifest: +101 lines of testsrsbuild-plugin-extension-monitor: +112 lines of tests
Official Release
The architecture refactoring and dependency slimming described above are now officially released as version 0.2.0. Upgrade today and thank you for using Addfox!


