Formatador de código Python que reformata arquivos conforme um estilo configurável, usando o algoritmo de layout do clang-format.
diffplug/spotless
Framework de plugins de build para Gradle e Maven que executa formatadores e linters em várias linguagens e tipos de arquivo.
- Estrelas
- 5,720
- Forks
- 565
- Issues abertas
- 251
- Último commit
- há 4 dias
O que é?
Spotless é um plugin de ferramenta de build que aplica formatadores de código aos arquivos-fonte de um projeto e falha o build quando os arquivos não estão formatados. Ele funciona com Gradle e Maven; um plugin para SBT é mantido separadamente. Um único comando, como spotlessApply, reescreve os arquivos fora do padrão, enquanto spotlessCheck os identifica, permitindo exigir a formatação no CI.
Spotless oferece suporte a várias linguagens, incluindo Java, Kotlin, Groovy, Scala, JavaScript, TypeScript, SQL, YAML, Markdown, Python, C++, e scripts de shell. Ele integra formatadores conhecidos, como google-java-format, ktlint, Prettier, Black e clang-format, e também oferece etapas genéricas para substituição por regex, remoção de espaços em branco, cabeçalhos de licença e execução de comandos nativos arbitrários.
O projeto também cuida de aspectos de integração: verificações de idempotência, tratamento de codificação e finais de linha, ratcheting com base no Git para formatar apenas arquivos alterados e suporte ao build-cache e ao configuration-cache do Gradle.
Recursos principais
- 01Verifica e corrige automaticamente a formatação com as tarefas spotlessCheck e spotlessApply.
- 02Oferece suporte a Java, Kotlin, Groovy, Scala, JavaScript, TypeScript, SQL, YAML, Markdown e outras linguagens.
- 03Integra formatadores como google-java-format, ktlint, Prettier, Black e clang-format.
- 04Usa uma referência do Git como base para processar apenas arquivos alterados.
- 05Inclui etapas genéricas para substituição por regex, remoção de espaços em branco e cabeçalhos de licença.
Casos de uso
- Exigir um estilo de código consistente em um monorepo Java ou Kotlin com várias linguagens no CI.
- Formatar automaticamente apenas os arquivos alterados em um pull request durante o desenvolvimento local.
- Aplicar cabeçalhos de licença ou regras de ordenação de imports a todos os arquivos-fonte de um build.
- Formatar SQL, YAML ou Markdown junto com o código da aplicação usando uma única ferramenta.
Início rápido
- 1
Adicione o plugin Spotless ao seu build do Gradle ou Maven, seguindo o guia plugin-gradle ou plugin-maven
- 2
Aplique a formatação com Gradle
./gradlew spotlessApply - 3
Aplique a formatação com Maven
mvn spotless:apply
Antes de usar
- O suporte oficial cobre apenas Gradle e Maven; a integração com SBT é externa.
- O suporte a recursos e formatadores varia conforme a ferramenta de build, então algumas etapas estão disponíveis apenas no Gradle.
Em coleções
Tópicos
Perguntas frequentes
- O que é spotless?
- Framework de plugins de build para Gradle e Maven que executa formatadores e linters em várias linguagens e tipos de arquivo. Spotless é um plugin de ferramenta de build que aplica formatadores de código aos arquivos-fonte de um projeto e falha o build quando os arquivos não estão formatados. Ele funciona com Gradle e Maven; um plugin para SBT é mantido separadamente. Um único comando, como spotlessApply, reescreve os arquivos fora do padrão, enquanto spotlessCheck os identifica, permitindo exigir a formatação no CI.
- spotless é gratuito? Qual é a licença?
- spotless é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- spotless ainda é mantido?
- Manutenção ativa. O último commit de spotless foi em 2 de nov. de 2026.
- Para que posso usar spotless?
- Exigir um estilo de código consistente em um monorepo Java ou Kotlin com várias linguagens no CI. Formatar automaticamente apenas os arquivos alterados em um pull request durante o desenvolvimento local. Aplicar cabeçalhos de licença ou regras de ordenação de imports a todos os arquivos-fonte de um build. Formatar SQL, YAML ou Markdown junto com o código da aplicação usando uma única ferramenta.
- Como instalar spotless?
- Adicione o plugin Spotless ao seu build do Gradle ou Maven, seguindo o guia plugin-gradle ou plugin-maven Aplique a formatação com Gradle: ./gradlew spotlessApply Aplique a formatação com Maven: mvn spotless:apply
- Onde consigo spotless?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/diffplug/spotless
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Analisador estático de código e formatador para Ruby que aplica as regras do Ruby Style Guide da comunidade e corrige automaticamente muitas infrações.
Black é um formatador determinístico e opinativo de código Python que reescreve arquivos no lugar e gera diffs mínimos.
Ferramenta de linha de comando para PHP que corrige o código automaticamente para seguir padrões como PER-CS e Symfony.
Utilitário e biblioteca Python que organiza e agrupa automaticamente as instruções de importação.
Plugin do Gradle para publicar bibliotecas Java, Kotlin e Android, com sources e javadoc, no Maven Central ou em outros repositórios Nexus.