Создаёт интерактивные и удобные для чтения ER-диаграммы по схеме базы данных с настройкой без конфигурации через веб-URL или CLI.
k1LoW/tbls
Go CLI для генерации документации GFM Markdown по актуальной схеме базы данных с поддержкой diff, lint и ER-диаграмм в CI.
- Звёзды
- 4,364
- Форки
- 217
- Открытые issues
- 57
- Последний коммит
- 8 дней назад
Что это?
tbls подключается к базе данных, считывает её схему и генерирует удобный для просмотра документ Markdown с описаниями таблиц, столбцов, индексов, ограничений и связей. Также он умеет создавать ER-диаграммы в форматах SVG, PNG, JPG и Mermaid, а также экспортировать схему в DOT, PlantUML, JSON, YAML и Excel.
Помимо документирования, tbls проверяет схемы. Команда diff сравнивает актуальную базу данных с документацией, сгенерированной для неё, или с другой базой данных, а команда lint проверяет настраиваемые правила — например, наличие комментариев к столбцам, максимальное число столбцов и индексы для внешних ключей. Команда coverage показывает, какая часть схемы задокументирована.
tbls поставляется в виде одного бинарного файла и поддерживает PostgreSQL, MySQL, MariaDB, SQLite, SQL Server, BigQuery, Snowflake, Redshift, Cloud Spanner, DynamoDB, MongoDB, ClickHouse, Databricks и другие системы. Настройки хранятся в файле .tbls.yml, поэтому tbls легко запускать в CI-пайплайнах.
Ключевые возможности
- 01Генерирует документацию Markdown по схеме базы данных в формате, удобном для GitHub.
- 02Создаёт ER-диаграммы в форматах SVG, PNG, JPG и Mermaid.
- 03Сравнивает базу данных с её документацией или с другой базой данных.
- 04Проверяет схемы по настраиваемым правилам, например наличию комментариев и ограничениям на число столбцов.
- 05Оценивает полноту документации таблиц и столбцов.
- 06Поддерживает множество баз данных, включая PostgreSQL, MySQL, SQLite, BigQuery и MongoDB.
Сценарии использования
- Хранить документацию схемы базы данных в репозитории и обновлять её вместе с изменениями кода.
- Завершать сборку CI с ошибкой, если изменения схемы нарушают документацию или правила lint.
- Сравнивать production-базу с staging- или локальной копией.
- Экспортировать определения схемы в Excel или PlantUML для обсуждения с коллегами, не занимающимися разработкой.
Быстрый старт
- 1
Установите через Homebrew
brew install tbls - 2
Создайте документацию для базы данных одной командой
tbls doc postgres://dbuser:dbpass@hostname:5432/dbname
Что важно знать
- Документирует работающую базу данных, поэтому потребуется доступное подключение к базе данных и учетные данные.
В подборках
Темы
Частые вопросы
- Что такое tbls?
- Go CLI для генерации документации GFM Markdown по актуальной схеме базы данных с поддержкой diff, lint и ER-диаграмм в CI. tbls подключается к базе данных, считывает её схему и генерирует удобный для просмотра документ Markdown с описаниями таблиц, столбцов, индексов, ограничений и связей. Также он умеет создавать ER-диаграммы в форматах SVG, PNG, JPG и Mermaid, а также экспортировать схему в DOT, PlantUML, JSON, YAML и Excel.
- tbls можно использовать бесплатно? Какая у него лицензия?
- tbls распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- tbls всё ещё поддерживается?
- Активно поддерживается. Последний коммит в tbls — 15 окт. 2026 г..
- Для чего можно использовать tbls?
- Хранить документацию схемы базы данных в репозитории и обновлять её вместе с изменениями кода. Завершать сборку CI с ошибкой, если изменения схемы нарушают документацию или правила lint. Сравнивать production-базу с staging- или локальной копией. Экспортировать определения схемы в Excel или PlantUML для обсуждения с коллегами, не занимающимися разработкой.
- Как установить tbls?
- Установите через Homebrew: brew install tbls Создайте документацию для базы данных одной командой: tbls doc postgres://dbuser:dbpass@hostname:5432/dbname
- Где скачать tbls?
- Исходный код и инструкции по установке — на GitHub: https://github.com/k1LoW/tbls
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Генератор сайтов документации, который превращает Markdown-файлы в сайт без этапа сборки.
Быстрый генератор статических сайтов в виде одного бинарного файла, со встроенной поддержкой Markdown, Sass, обработки изображений и поиска.
Генератор документации для Python, который создает HTML, PDF, EPUB и другие форматы из исходников reStructuredText или Markdown.
Открытый фреймворк Hugo с блоками на Tailwind для создания лендингов, портфолио, блогов и документации из обычных Markdown-файлов.
CLI-инструмент для копирования данных между базами данных, файлами и SaaS-платформами одной командой, без написания кода.