Repolode
extension-js

extension-js/extension.js

Framework para extensões cross-browser com servidor de desenvolvimento sem configuração, hot reload e builds para Chrome, Edge, Firefox e Safari.

Estrelas
5,197
Forks
142
Issues abertas
5
Último commit
há 2 horas

O que é?

Extension.js é uma CLI e uma toolchain de build para desenvolver extensões de navegador. Ela oferece suporte a Chrome, Edge, Firefox e Safari a partir de uma única base de código, com Manifest V3 como padrão e adaptadores automáticos para as diferenças de cada navegador.

Durante o desenvolvimento, oferece hot module replacement para páginas de popup, opções e devtools, incluindo componentes de React, Vue, Svelte e Preact. Content scripts e o service worker são recarregados de forma direcionada, então salvar um arquivo não reinicia a extensão inteira. Não é necessário configurar webpack nem rollup.

A CLI também pode gerar bundles de produção, empacotá-los em um ZIP para envio às lojas, instalar binários de navegadores gerenciados e executar extensões diretamente de uma URL de exemplo no GitHub. Ela funciona com Node.js, Deno e Bun.

Recursos principais

  • 01Hot module replacement para páginas da extensão e recarregamentos direcionados para content scripts e o service worker
  • 02Configuração sem etapas, sem necessidade de manter configurações de webpack ou rollup
  • 03Manifest V3 como padrão, com adaptadores para Chrome, Edge, Firefox e Safari
  • 04Builds de produção empacotados como arquivos ZIP para envio às lojas
  • 05Binários de navegadores gerenciados que podem ser instalados pela CLI
  • 06Suporte integrado a TypeScript, React, Vue, Svelte e Preact

Casos de uso

  • Criar uma extensão cross-browser que precisa ser publicada na Chrome Web Store e no Firefox Add-ons
  • Adicionar hot reload a uma extensão existente com uma única devDependency
  • Executar no Edge ou Firefox, para testes, um exemplo de Chrome hospedado no GitHub
  • Desenvolver a interface de uma extensão com React, Vue, Svelte ou Preact

Início rápido

  1. 1

    Criar um novo projeto com a CLI

    npx extension@latest create my-extension
  2. 2

    Entrar na pasta do projeto

    cd my-extension
  3. 3

    Iniciar o servidor de desenvolvimento e abrir o navegador

    npm run dev

Antes de usar

  • A CLI requer Node.js 22.12+, Deno 2.5+ ou Bun 1.2+.
  • A CLI rejeita o Deno 2.8.0.

Em coleções

Tópicos

Perguntas frequentes

O que é extension.js?
Framework para extensões cross-browser com servidor de desenvolvimento sem configuração, hot reload e builds para Chrome, Edge, Firefox e Safari. Extension.js é uma CLI e uma toolchain de build para desenvolver extensões de navegador. Ela oferece suporte a Chrome, Edge, Firefox e Safari a partir de uma única base de código, com Manifest V3 como padrão e adaptadores automáticos para as diferenças de cada navegador.
extension.js é gratuito? Qual é a licença?
extension.js é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
extension.js ainda é mantido?
Manutenção ativa. O último commit de extension.js foi em 22 de out. de 2026.
Para que posso usar extension.js?
Criar uma extensão cross-browser que precisa ser publicada na Chrome Web Store e no Firefox Add-ons Adicionar hot reload a uma extensão existente com uma única devDependency Executar no Edge ou Firefox, para testes, um exemplo de Chrome hospedado no GitHub Desenvolver a interface de uma extensão com React, Vue, Svelte ou Preact
Como instalar extension.js?
Criar um novo projeto com a CLI: npx extension@latest create my-extension Entrar na pasta do projeto: cd my-extension Iniciar o servidor de desenvolvimento e abrir o navegador: npm run dev
Onde consigo extension.js?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/extension-js/extension.js

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados