Создание ER-диаграмм (entity-relationship diagrams) до недавнего времени было задачей, от которой у разработчиков порой начинала болеть голова ещё до старта проекта. Традиционные инструменты часто медленные, неудобные, и требуют бесконечного перетаскивания блоков мышкой. Но, к счастью, появился новый подход: dbdiagram.io. dbdiagram.io превращает скучную рутину в увлекательный процесс, который, к тому же, практически не требует отрыва от клавиатуры. В отличие от привычных инструментов, здесь всё построено вокруг принципа «Diagram as Code» (диаграмма как код): Под капотом dbdiagram.io лежит специально разработанный открытый язык DBML (Database Markup Language). Это своего рода Markdown, только для баз данных. Пример простого описания таблицы выглядит примерно так: Table users {
id int [pk]
name varchar
email varchar [unique]
created_at timestamp
}
Table posts {
id int [pk]
user_id int [ref: > users.id]
content text
created_at timestamp
} ☝️ На основе такого описания серв