Files
wxt/docs/get-started/compare.md
T

4.1 KiB

Compare

Lets compare the features of WXT vs Plasmo (another framework) and CRXJS (a bundler plugin).

Overview

Features WXT Plasmo CRXJS
Supports all browsers 🟡 10
MV2 Support 🟡 1
MV3 Support 🟡 1
Create Extension ZIPs
Create Firefox Sources ZIP
First-class TypeScript support
Entrypoint discovery 2 2
Inline entrypoint config 9
Auto-imports
Supports all frontend frameworks 🟡 3
Framework specific entrypoints (like Popup.tsx) 🟡 4 5
Automated publishing
Remote Code Bundling (Google Analytics)
Dev Mode
.env Files
Opens browser with extension installed
HMR for UIs 🟡 6
Reload HTML Files on Change 🟡 7
Reload Content Scripts on Change 🟡 7
Reload Background on Change 🟡 7 🟡 7 🟡 7
Respects Content Script run_at 8
Built-in Utils
Storage 11
Messaging 11 11
Content Script UI 11
1: Either MV2 or MV3, not both.
2: File based.
3: Only React, Vue, and Svelte.
4: .html .ts .tsx.
5: .html .ts .tsx. .vue .svelte.
6: React only.
7: Reloads entire extension.
8: ESM-style loaders run asynchronously.
9: Entrypoint options all configured in `manifest.json`.
10: As of v2.0.0-beta.23, but v2 stable hasn't been released yet.
11: There is no built-in wrapper around this API. However, you can still access the standard APIs via chrome/browser globals or use any 3rd party NPM package.