Ultracite

Ultracite

Hayden Bleasel · Programação

Ultracite é um preset gratuito de linter e formatador de código sem configuração para JavaScript e TypeScript. Ele se conecta ao Biome, Oxlint ou ESLint e dá aos agentes de IA as mesmas regras que seu time segue.

Prévia da interface de Ultracite

Sobre Ultracite

What Is Ultracite

Ultracite é um preset para ferramentas de qualidade de código. Ele não analisa nem formata código sozinho. Fica por cima de um motor que você já conhece, como Biome, Oxlint ou ESLint, e entrega a ele um conjunto de regras que a maioria dos projetos de JavaScript e TypeScript acaba querendo de qualquer forma. Hayden Bleasel, o mantenedor, publica tudo como projeto de código aberto sob a licença MIT, então não há nada para comprar nem para licenciar.

O problema que ele resolve é a configuração. Um projeto novo costuma significar dias copiando ajustes de um repositório antigo, discutindo estilos de aspas e repetindo a mesma configuração em cada app. Ultracite resume isso a npx ultracite init, um comando que escreve o arquivo de configuração, conecta seu editor e termina em segundos. A segurança de tipos também recebe atenção: a instalação ativa verificações estritas de nulos no tsconfig.json, a menos que você já cuide disso.

O principal limite é a postura sobre convenção. Ultracite é opinativo de propósito, então se você gosta de ajustar cada regra na mão, ele pode parecer apertado. A vantagem é que você para de manter um arquivo de configuração e começa a entregar código.

Getting Started

  1. Abra um terminal na pasta do projeto e rode npx ultracite init. O assistente guia você na escolha do formatador e do linter, do framework, do editor e dos agentes de IA.
  2. Escolha seu conjunto de ferramentas quando ele perguntar: Oxlint com Oxfmt pela velocidade, Biome para um binário tudo em um, ou ESLint com Prettier e Stylelint se você depende de plugins específicos.
  3. Deixe o instalador escrever os arquivos de configuração e atualizar o package.json. Ele remove automaticamente as configurações de ESLint e Prettier que entrariam em conflito.
  4. Rode ultracite check para ver os problemas sem mexer nos arquivos, e depois ultracite fix para aplicar correções seguras e automáticas.
  5. Salve um arquivo no seu editor para ver a formatação e as correções na hora, e faça commit com tranquilidade.

Informações do produto

Uma visão rápida dos preços, das plataformas compatíveis e do desempenho de Ultracite.

Plano gratuitoSim
Planos pagos$0
PlataformaCommand line, VS Code, Cursor, Windsurf, Zed, CI pipelines
DesenvolvedorHayden Bleasel
CategoriaProgramação
Data de lançamentoNov 2024
Última atualizaçãoOct 2025
Visitas ao siteN/A
Ranking global do siteN/A
Disponibilidade da APINão

Ideal para

Os usuários, tarefas e cenários em que esta ferramenta se encaixa melhor.

Usuários

  • Desenvolvedores de JavaScript e TypeScript
  • Times que recebem gente nova
  • Desenvolvedores que usam assistentes de IA

Tarefas

  • Limpar um repositório bagunçado
  • Manter um monorepo coerente
  • Aplicar o estilo antes dos commits
  • Delegar correções difíceis a um agente de IA

Cenários

  • Começar um projeto do zero e querer padrões sólidos sem ler dez manuais de configuração.
  • Migrar de uma configuração antiga de ESLint e Prettier e buscar um ponto de partida mais limpo.
  • Rodar verificações em CI numa base de código grande, onde a velocidade de resposta importa.
  • Trabalhar com arquivos CSS e JSON junto ao TypeScript e querer que uma única cadeia de ferramentas cubra todos eles.

Principais recursos

Configuração sem ajustes

Um único comando, npx ultracite init, conecta o linter e o formatador que você escolher, os ajustes do editor e as regras dos agentes de IA. Você responde algumas perguntas e o instalador escreve os arquivos. Ele ainda apaga as configurações de ESLint e Prettier que brigariam entre si, então você não depura regras duplicadas depois.

Três combinações de ferramentas

Ultracite funciona com Oxlint mais Oxfmt, com Biome, ou com ESLint mais Prettier e Stylelint. O Oxlint é a opção mais rápida, e segundo o projeto roda bem mais rápido que o ESLint. O Biome junta análise e formatação num único binário escrito em Rust. A rota do ESLint existe para times que dependem da sua grande biblioteca de plugins.

Arquivos de regras para agentes de IA

Esse recurso é o que separa o Ultracite de um linter comum. O init gera arquivos de contexto para Claude Code, GitHub Copilot, Cursor, Gemini e outros agentes, então as sugestões deles batem com o estilo do seu projeto. Ele também inclui uma skill reutilizável e hooks que formatam o código de novo logo após uma edição da IA.

Correções automáticas seguras

O ultracite fix corrige formatação e muitos erros de lint que são seguros de mudar, como remover importações sem uso ou trocar == por ===. As reescritas mais arriscadas ficam atrás da opção --unsafe, e tudo que exige critério humano é sinalizado em vez de alterado em silêncio.

Cobertura no editor e no CI

A formatação roda ao salvar no VS Code, no Cursor e no Windsurf, e o init também pode escrever ajustes para o Zed. Cada cadeia de ferramentas roda pela linha de comando com ultracite check e ultracite fix, o que significa que as mesmas verificações funcionam em qualquer editor e no CI.

Suporte a monorepo e hooks de Git

Uma configuração cobre cada pacote de um monorepo, o que acaba com a pilha de arquivos de configuração duplicados que costuma se acumular. O Ultracite também se liga ao Husky, ao Lefthook, ao lint-staged e ao pre-commit para que os arquivos preparados cheguem limpos à revisão.

Padrões de tipagem segura

A instalação ativa verificações estritas de nulos nos seus arquivos tsconfig.json, a menos que já estejam ligadas ou que você as tenha desligado. Os presets adicionam regras de lint que apontam tipagens inseguras e sugerem correções, o que reduz erros em tempo de execução desde cedo.

Prós e contras

Prós

  • Grátis e de código aberto sob a licença MIT, sem plano pago nem limite de assentos.
  • Encurta a configuração de lint e formatação de horas para um único comando.
  • Motores baseados em Rust, como Biome e Oxlint, mantêm as verificações rápidas em projetos grandes.
  • Gera arquivos de regras que combinam com os agentes de IA, então pessoas e modelos compartilham um mesmo estilo.
  • Cobre monorepos e arquivos CSS, JSON, Markdown e outros que não são de JavaScript.

Contras

  • Os padrões são opinativos, então desligar muitas regras deixa você com pouco benefício, como admite a própria FAQ do projeto.
  • Ainda é preciso conhecer a ferramenta de base, como Biome ou ESLint, quando uma regra faz algo inesperado.
  • Não há painel hospedado nem interface gráfica, então a configuração e os relatórios ficam no terminal.
  • A configuração por linha de comando e por editor é voltada para JavaScript e TypeScript, não para outras linguagens.

Perguntas frequentes

Ultracite é um preset, não um linter. Trata-se de um conjunto de regras e ajustes que roda por cima do Biome, do Oxlint ou do ESLint, que são quem de fato formata e analisa o código. Pense nele como a camada de configuração que poupa você de escolher e ajustar cada regra por conta própria.