tbls is a command-line tool that automatically generates living documentation from database schemas, producing Markdown files with table descriptions, column details, constraints, indexes, and entity-relationship diagrams. It connects to 13 database engines including PostgreSQL, MySQL, MariaDB, SQLite, BigQuery, Cloud Spanner, Amazon Redshift, SQL Server, DynamoDB, Snowflake, MongoDB, ClickHouse, and Databricks, making it a universal documentation layer for multi-database environments.
What makes tbls particularly valuable for engineering teams is its CI-first design philosophy. The tool includes a built-in linter that enforces documentation standards such as requiring descriptions for all tables and columns, and a coverage metric that tracks how thoroughly a schema is documented. When integrated with GitHub Actions via its dedicated setup action, tbls can run schema diff detection on every pull request, catching undocumented changes before they reach production and preventing documentation debt from accumulating.
Originally developed in the Japanese open-source ecosystem, tbls has grown to 4,200 GitHub stars with over 2,500 commits. The Go-based binary requires no runtime dependencies and can be distributed as a single executable or Docker image. Output formats include Markdown for repository documentation, SVG diagrams for visual schema exploration, and machine-readable JSON for building custom documentation pipelines or integrating with other tools in the development workflow.