Genera diagramas ER interactivos y fáciles de leer a partir del esquema de tu base de datos, sin configuración, desde una URL web o la CLI.
k1LoW/tbls
CLI de Go que genera documentación Markdown GFM a partir del esquema de una base de datos activa, con diff, lint y diagramas ER para CI.
- Estrellas
- 4,364
- Forks
- 217
- Issues abiertos
- 57
- Último commit
- hace 8 días
¿Qué es?
tbls se conecta a una base de datos, lee su esquema y genera un documento Markdown navegable con tablas, columnas, índices, restricciones y relaciones. También puede crear diagramas ER en SVG, PNG, JPG o Mermaid, y exportar el esquema a formatos como DOT, PlantUML, JSON, YAML y Excel.
Además de generar documentación, tbls permite comprobar esquemas. El comando diff compara una base de datos activa con el documento generado o con otra base de datos, y el comando lint aplica reglas configurables, como exigir comentarios en las columnas, limitar la cantidad de columnas y comprobar que haya índices en las claves foráneas. El comando coverage indica qué parte del esquema está documentada.
tbls se distribuye como un único binario y es compatible con PostgreSQL, MySQL, MariaDB, SQLite, SQL Server, BigQuery, Snowflake, Redshift, Cloud Spanner, DynamoDB, MongoDB, ClickHouse y Databricks, entre otras bases de datos. La configuración se guarda en un archivo .tbls.yml, por lo que resulta sencillo ejecutarlo en pipelines de CI.
Funciones clave
- 01Genera documentación Markdown compatible con GitHub a partir del esquema de una base de datos.
- 02Crea diagramas ER en formato SVG, PNG, JPG o Mermaid.
- 03Compara una base de datos con su documentación o con otra base de datos.
- 04Aplica reglas configurables a los esquemas, como exigir comentarios y limitar la cantidad de columnas.
- 05Mide la cobertura de la documentación de tablas y columnas.
- 06Es compatible con numerosas bases de datos, como PostgreSQL, MySQL, SQLite, BigQuery y MongoDB.
Casos de uso
- Mantener en el repositorio un documento del esquema de la base de datos y actualizarlo junto con los cambios en el código.
- Hacer que las compilaciones de CI fallen cuando los cambios en el esquema incumplan las reglas de documentación o lint.
- Comparar una base de datos de producción con una de staging o con una copia local.
- Exportar definiciones de esquemas a Excel o PlantUML para revisarlas con personas que no desarrollan.
Inicio rápido
- 1
Instala mediante Homebrew
brew install tbls - 2
Documenta una base de datos con un solo comando
tbls doc postgres://dbuser:dbpass@hostname:5432/dbname
Antes de usarlo
- Documenta una base de datos activa, por lo que necesitas una conexión accesible a la base de datos y credenciales.
En colecciones
Temas
Preguntas frecuentes
- ¿Qué es tbls?
- CLI de Go que genera documentación Markdown GFM a partir del esquema de una base de datos activa, con diff, lint y diagramas ER para CI. tbls se conecta a una base de datos, lee su esquema y genera un documento Markdown navegable con tablas, columnas, índices, restricciones y relaciones. También puede crear diagramas ER en SVG, PNG, JPG o Mermaid, y exportar el esquema a formatos como DOT, PlantUML, JSON, YAML y Excel.
- ¿tbls es gratuito? ¿Qué licencia tiene?
- tbls es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿tbls sigue mantenido?
- Mantenimiento activo. El último commit de tbls fue el 15 oct 2026.
- ¿Para qué puedo usar tbls?
- Mantener en el repositorio un documento del esquema de la base de datos y actualizarlo junto con los cambios en el código. Hacer que las compilaciones de CI fallen cuando los cambios en el esquema incumplan las reglas de documentación o lint. Comparar una base de datos de producción con una de staging o con una copia local. Exportar definiciones de esquemas a Excel o PlantUML para revisarlas con personas que no desarrollan.
- ¿Cómo se instala tbls?
- Instala mediante Homebrew: brew install tbls Documenta una base de datos con un solo comando: tbls doc postgres://dbuser:dbpass@hostname:5432/dbname
- ¿Dónde consigo tbls?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/k1LoW/tbls
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Generador de sitios de documentación que convierte archivos Markdown en un sitio web sin necesidad de un paso de compilación.
Generador rápido de sitios estáticos que se distribuye como un único binario e incluye Markdown, Sass, procesamiento de imágenes y búsqueda.
Generador de documentación para Python que crea HTML, PDF, EPUB y otros formatos a partir de fuentes reStructuredText o Markdown.
Framework open source de Hugo con bloques Tailwind para crear landing pages, portfolios, blogs y documentación a partir de archivos Markdown sin formato.
Herramienta de línea de comandos que copia datos entre bases de datos, archivos y plataformas SaaS con un solo comando y sin escribir código.