Formateador de código Python que adapta los archivos fuente a un estilo configurable con el algoritmo de diseño de clang-format.
diffplug/spotless
Framework de plugins de compilación para Gradle y Maven que ejecuta formateadores y linters en muchos lenguajes y tipos de archivo.
- Estrellas
- 5,720
- Forks
- 565
- Issues abiertos
- 251
- Último commit
- hace 4 días
¿Qué es?
Spotless es un plugin para herramientas de compilación que aplica formateadores de código a los archivos fuente de un proyecto y hace fallar la compilación si no tienen el formato correcto. Funciona con Gradle y Maven; el plugin para SBT se mantiene por separado. Un solo comando, como spotlessApply, corrige los archivos que no cumplen las reglas, mientras que spotlessCheck los detecta, lo que permite exigir el formato correcto en CI.
Spotless es compatible con una amplia variedad de lenguajes, como Java, Kotlin, Groovy, Scala, JavaScript, TypeScript, SQL, YAML, Markdown, Python, C++, y scripts de shell. Integra formateadores conocidos como google-java-format, ktlint, Prettier, Black y clang-format. También ofrece pasos genéricos para sustituir expresiones regulares, eliminar espacios en blanco, añadir encabezados de licencia y ejecutar comandos nativos arbitrarios.
El proyecto también cubre aspectos de integración: comprobaciones de idempotencia, gestión de la codificación y los finales de línea, ajuste progresivo basado en Git para formatear solo los archivos modificados, y compatibilidad con la caché de compilación y la caché de configuración de Gradle.
Funciones clave
- 01Comprueba y corrige automáticamente el formato con las tareas spotlessCheck y spotlessApply.
- 02Es compatible con Java, Kotlin, Groovy, Scala, JavaScript, TypeScript, SQL, YAML, Markdown y otros lenguajes.
- 03Integra formateadores como google-java-format, ktlint, Prettier, Black y clang-format.
- 04Ajusta progresivamente el formato respecto a una referencia de Git para procesar solo los archivos modificados.
- 05Incluye pasos genéricos para sustituir expresiones regulares, eliminar espacios en blanco y añadir encabezados de licencia.
Casos de uso
- Exigir un estilo de código coherente en un monorepo multilenguaje de Java o Kotlin mediante CI.
- Dar formato automático únicamente a los archivos modificados en una pull request durante el desarrollo local.
- Añadir encabezados de licencia o aplicar reglas de ordenación de imports a todos los archivos fuente de una compilación.
- Dar formato a SQL, YAML o Markdown junto con el código de la aplicación usando una sola herramienta.
Inicio rápido
- 1
Añade el plugin Spotless a tu compilación de Gradle o Maven siguiendo la guía plugin-gradle o plugin-maven
- 2
Aplica el formato con Gradle
./gradlew spotlessApply - 3
Aplica el formato con Maven
mvn spotless:apply
Antes de usarlo
- La compatibilidad oficial se limita a Gradle y Maven; la integración con SBT es externa.
- La compatibilidad de las funciones y los formateadores varía según la herramienta de compilación, por lo que algunos pasos solo están disponibles en Gradle.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es spotless?
- Framework de plugins de compilación para Gradle y Maven que ejecuta formateadores y linters en muchos lenguajes y tipos de archivo. Spotless es un plugin para herramientas de compilación que aplica formateadores de código a los archivos fuente de un proyecto y hace fallar la compilación si no tienen el formato correcto. Funciona con Gradle y Maven; el plugin para SBT se mantiene por separado. Un solo comando, como spotlessApply, corrige los archivos que no cumplen las reglas, mientras que spotlessCheck los detecta, lo que permite exigir el formato correcto en CI.
- ¿spotless es gratuito? ¿Qué licencia tiene?
- spotless es open source bajo la licencia Apache-2.0. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿spotless sigue mantenido?
- Mantenimiento activo. El último commit de spotless fue el 2 nov 2026.
- ¿Para qué puedo usar spotless?
- Exigir un estilo de código coherente en un monorepo multilenguaje de Java o Kotlin mediante CI. Dar formato automático únicamente a los archivos modificados en una pull request durante el desarrollo local. Añadir encabezados de licencia o aplicar reglas de ordenación de imports a todos los archivos fuente de una compilación. Dar formato a SQL, YAML o Markdown junto con el código de la aplicación usando una sola herramienta.
- ¿Cómo se instala spotless?
- Añade el plugin Spotless a tu compilación de Gradle o Maven siguiendo la guía plugin-gradle o plugin-maven Aplica el formato con Gradle: ./gradlew spotlessApply Aplica el formato con Maven: mvn spotless:apply
- ¿Dónde consigo spotless?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/diffplug/spotless
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Analizador estático y formateador de código Ruby que aplica las reglas de la Ruby Style Guide de la comunidad y corrige automáticamente muchas infracciones.
Black es un formateador de código Python con opiniones definidas y resultados deterministas que reescribe los archivos in situ con diffs mínimos.
Herramienta de línea de comandos para PHP que corrige automáticamente el código para ajustarlo a estándares como PER-CS y Symfony.
Utilidad y biblioteca de Python que ordena y agrupa automáticamente las sentencias de importación.
Plugin de Gradle para publicar bibliotecas de Java, Kotlin y Android, con fuentes y javadoc, en Maven Central u otros repositorios Nexus.