# crxjs/chrome-extension-tools

Build cross-browser extensions with native HMR and zero-config setup

Repository: https://github.com/crxjs/chrome-extension-tools
Canonical: https://ross.abutalabs.com/products/chrome-extension-tools
Homepage: https://crxjs.dev
Language: TypeScript
License Family: other
Topics: chrome-extension, typescript, rollup-js, rollup-plugin, npm-package, manifest-v2, manifest-v3, vite-plugin, rollup, vitejs, javascript
Last push: 2026-08-26T19:50:20+00:00

## Health v2 (maintenance only)
Score: 96/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 89, longevity 100
- inputs: {"age_days": 2728, "days_push": 7, "days_rel": 75, "gap_med": 8.5, "n_releases_24m": 15}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 4158, forks 244 (observed 2026-08-28T04:08:37.362134+00:00)

## What it is
CRXJS is a set of Vite and Rollup plugins for building cross-browser extensions with native hot module replacement and zero-config setup. It supports Manifest V3 via the Vite plugin and Manifest V2 via the Rollup plugin, with automatic handling of static assets and web-accessible resources.

## Use cases
- build a chrome extension with vite
- add hot module replacement to extension development
- scaffold a browser extension project with react or vue
- develop content scripts with instant reload
- migrate a chrome extension to manifest v3
- auto-generate web_accessible_resources for an extension

## When to choose
- you are building a Chrome or cross-browser extension with Vite
- you want HMR that works with content scripts and preserves extension state
- you want zero-config setup with intelligent defaults
- you need Manifest V3 support with TypeScript

## When to avoid
- you need Manifest V2 support and prefer the newer Vite plugin (MV2 requires the separate Rollup plugin)
- you are not building a browser extension
- you need a build tool without a Node.js/Vite ecosystem

## Facets
- artifact type: plugin
- maturity: active
- function: build-tool, developer-tools, cli
- domain: browser-extensions, web-development, developer-tools, frontend
- platform: browser-extension, cross-platform
- tags: vite-plugin, rollup-plugin, chrome-extension, manifest-v3, hmr, hot-module-replacement, typescript, zero-config, cross-browser, nodejs

## Member repositories
- crxjs/chrome-extension-tools (main) score 96

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:08:37.362134+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T18:22:50.566136+00:00, confidence not recorded.
  - readme: https://github.com/crxjs/chrome-extension-tools (fetched 2026-08-28T04:08:37.362134+00:00, sha c68d29e7547f)
  - homepage: https://crxjs.dev (fetched 2026-08-29T09:13:57.460542+00:00, sha f80e206e6f9f)
  - site_page: https://crxjs.dev/guide/installation/create-crxjs (fetched 2026-08-29T09:13:57.469286+00:00, sha 7c6e3cb9c56c)
- Data as of 2026-08-30T08:39:29.467469+00:00.
