tbls
tbls is a free, open-source tool for documenting and checking database schemas.
What tbls is
tbls is a free, open-source tool for documenting and checking database schemas. It generates GitHub Flavored Markdown documentation and can produce schemas in formats including DOT, PlantUML, Mermaid, SVG, PNG, JPG, JSON, YAML, Excel, and configuration files. Its configurable lint rules can check for requirements such as column comments and set column-count limits. The `diff` command compares a database schema with generated documentation or another database, while `coverage` measures documentation for descriptions and comments. Documented data sources include PostgreSQL, MySQL, MariaDB, SQLite, BigQuery, Cloud Spanner, Redshift, SQL Server, DynamoDB, Snowflake, MongoDB, ClickHouse, and Databricks, among others. It can be used with Docker and a GitHub Action, and external drivers can extend its database support. tbls runs on Linux, macOS, and Windows, or in a self-hosted setup. SQL Server use requires version 2017 or later and database compatibility level 110 or higher. It is available under the MIT License.
Good
- Free under the MIT License.
- Generates Markdown and many other schema formats.
- Lint rules can require column comments.
- Compares schemas with documentation or other databases.
- Supports Docker and a GitHub Action.
Watch out
- SQL Server requires version 2017 or later.
- SQL Server compatibility level 110 or higher is required.
- The repository reports no detected security policy.
Who it suits
tbls suits developers and database teams that want generated schema documentation, configurable lint checks, or schema comparisons as part of their workflow. It is also relevant to teams needing multiple output formats or documented database sources.
Verdict
tbls combines database documentation, linting, schema comparison, and coverage measurement in one tool. Check its SQL Server requirements if that is your database.
Plans and prices
From tbls's own pricing page, checked 1 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| Open-source software | Free | MIT license · single-binary CLI |
The facts
Each one read from tbls's own pages, with the date it was checked.
What it does
- Automatic documentation
- It automatically documents databases in GitHub Flavored Markdown and outputs schemas in many formats.checked 1 Oct 2026
- BigQuery permissions
- BigQuery use requires bigquery.datasets.get, bigquery.tables.get and bigquery.tables.list permissions.checked 1 Oct 2026
- CI integration
- The project documents GitHub Actions integration through the k1low/setup-tbls action.checked 1 Oct 2026
- Container integration
- An official container image is published as ghcr.io/k1low/tbls.checked 1 Oct 2026
- Coverage
- The tbls coverage command measures documentation coverage for descriptions and comments.checked 30 Sep 2026
- Coverage measurement
- The tbls coverage command measures documentation coverage for tables and comments.checked 1 Oct 2026
- Database linting
- It can lint databases using configurable rules such as required column comments and column-count limits.checked 1 Oct 2026
- Documentation
- It automatically documents databases in GitHub Flavored Markdown and outputs schemas in many formats.checked 30 Sep 2026
- Extensibility
- Executables named tbls-driver-* can provide external database drivers, receiving TBLS_DSN and emitting schema.json on standard output.checked 30 Sep 2026
- External drivers
- Executables named tbls-driver-* on PATH can provide additional database schemes through TBLS_DSN and schema JSON on standard output.checked 1 Oct 2026
- Integrations
- Documented datasources include PostgreSQL, MySQL, MariaDB, SQLite, BigQuery, Cloud Spanner, Amazon Redshift, Microsoft SQL Server, Azure SQL or Microsoft Fabric Warehouse, Amazon DynamoDB, Snowflake, MongoDB, ClickHouse, Databricks, JSON, HTTP, and GitHub.checked 30 Sep 2026
- Latest release
- The repository's releases page lists v1.96.1, released on 28 September 2026.checked 30 Sep 2026
- License
- The software is released under the MIT License and permits use, copying, modification, publication, distribution and sublicensing subject to its notice requirement.checked 1 Oct 2026
- Linting
- tbls works as a database linter with configurable rules such as required column comments and column-count limits.checked 30 Sep 2026
- Output formats
- tbls can output Markdown, DOT, PlantUML, Mermaid, SVG, PNG, JPG, JSON, YAML, Excel, and configuration files.checked 30 Sep 2026
- Purpose
- tbls is a CI-friendly tool written in Go for documenting databases.checked 1 Oct 2026
- Schema comparison
- The tbls diff command compares database schemas with generated documents or other databases.checked 30 Sep 2026
- Schema diffing
- The tbls diff command compares a database with generated documentation or another database.checked 1 Oct 2026
- Security policy
- The repository security page states that no security policy is detected.checked 1 Oct 2026
- SQL Server limit
- SQL Server 2017 or later with database compatibility level 110 or higher is required for schema introspection.checked 1 Oct 2026
- Support channel
- The project provides GitHub Issues for reporting and discussing problems.checked 1 Oct 2026
- Supported databases
- Documented data sources include PostgreSQL, MySQL, MariaDB, SQLite, BigQuery, Cloud Spanner, Redshift, SQL Server, DynamoDB, Snowflake, MongoDB, ClickHouse and Databricks.checked 1 Oct 2026
- Transport security
- For PostgreSQL, MySQL, MariaDB and Microsoft SQL Server, the DSN supports TLS certificate configuration and hostname verification.checked 1 Oct 2026
The company
- Maker
- The repository owner and copyright holder is Ken'ichiro Oyama.checked 30 Sep 2026
Alternatives to tbls
- 1

MySQL
Free planAPILinuxmacOSSelf-hosted7.9Free plan - 2

Azimutt
Free planOpen sourceWebAPIExtensionLinux7.8From €7 a month - 3

DBDock
Free planOpen sourceWebAPILinuxmacOS7.5Free plan - 4

dbt Semantic Layer
Free planWebAPIExtension7.5From $100 a month - 5

DbSchema
Free planLinuxmacOSWindows7.0From $29.40 a month - 6

dbdocs
Free planWebLinuxmacOSWindows6.9From $20 a month
