Ultracite é uma configuração robusta de linting para aplicativos TypeScript modernos, construídos em Biome. É incrivelmente teimoso e rigoroso, aplicando o máximo de segurança de tipo e qualidade de código. Depois que o Ultracite estiver configurado, ele irá automaticamente limpar, corrigir e formatar seu código ao salvar.
Execute o comando abaixo para instalar o Ultracite:
pnpm add -D --save-exact ultracite @biomejs/biome
Se você estiver executando o VS Code, certifique-se de ter as seguintes extensões instaladas:
code --install-extension biomejs.biome
code --install-extension bradlc.vscode-tailwindcss
Crie um biome.json
com o seguinte conteúdo:
{ "extends" : [ " ultracite " ] }
Ultracite foi projetado para ser usado com VS Code. Crie um arquivo .vscode/settings.json
com o seguinte conteúdo para permitir a formatação completa e a correção ao salvar:
{
"typescript.tsdk" : " node_modules/typescript/lib " ,
"editor.defaultFormatter" : " biomejs.biome " ,
"editor.formatOnSave" : true ,
"editor.formatOnPaste" : true ,
"emmet.showExpandedAbbreviation" : " never " ,
"editor.codeActionsOnSave" : {
"quickfix.biome" : " explicit " ,
"source.organizeImports.biome" : " explicit "
},
"[typescript]" : {
"editor.defaultFormatter" : " biomejs.biome "
},
"[json]" : {
"editor.defaultFormatter" : " biomejs.biome "
},
"[javascript]" : {
"editor.defaultFormatter" : " biomejs.biome "
},
"[jsonc]" : {
"editor.defaultFormatter" : " biomejs.biome "
},
"[typescriptreact]" : {
"editor.defaultFormatter" : " biomejs.biome "
}
}
Por último, certifique-se de que seu tsconfig.json
(se existir) inclua sua nova configuração ESLint e que strictNullChecks
esteja habilitado.
{
"compilerOptions" : {
"strictNullChecks" : true
}
}
O Ultracite irá limpar, corrigir e formatar automaticamente seu código ao salvá-lo. Se quiser executar o Ultracite manualmente, você pode fazer isso com o seguinte comando:
npx ultracite
Embora o Ultracite tenha sido projetado para ter configuração zero, você pode modificar o que quiser em seu arquivo biome.json
. Por exemplo, para ativar a regra noAutofocus
, você pode fazer o seguinte:
{
"extends" : [ " ultracite " ],
"linter" : {
"rules" : {
"a11y" : {
"noAutofocus" : " off "
}
}
}
}
Você também pode desabilitar regras por linha adicionando um comentário no final da linha:
// biome-ignore lint/security/noDangerouslySetInnerHtml: I do what I want mate.
< div dangerouslySetInnerHTML = { { ... } } / >
Ultracite foi anteriormente construído em ESLint, Prettier e Stylelint. Se quiser usar essa pilha, você pode instalar uma versão compatível do Ultracite com o seguinte comando:
pnpm add -D ultracite@3 eslint@8 prettier stylelint typescript jest