For an ER diagram from my database, the first results are liam-hq/liam, chartdb/chartdb and django-extensions/django-extensions. dbeaver/dbeaver and ariga/atlas round out the shortlist. Compare the match explanations and check the project documentation against your requirements.
Automated tools that analyze live database schemas to generate visual entity-relationship diagrams for documentation.
Liam is a database schema visualizer and interactive entity-relationship diagram generator. It parses SQL schemas and ORM formats to create visual representations of database structures, allowing users to analyze table relationships and navigate complex layouts. The project distinguishes itself through CI/CD pipeline integration, acting as a documentation automator that synchronizes diagrams with database schema changes during deployment. It supports sharing specific perspectives of a schema via coordinate-based view links that capture precise zoom levels and filtered views. The tool provide
Liam is an interactive ER diagram generator that visualizes database schemas from SQL and ORM files, which makes it a solid choice for schema analysis and documentation, but its file-based parsing rather than live database connections may not fully satisfy the request for direct reverse-engineering from a running instance.
ChartDB is a database schema visualizer and entity-relationship diagramming platform designed to help developers understand, design, and document complex data architectures. It functions as a visual workspace where users can create and modify database schemas, define table attributes, and map foreign key relationships. By parsing database metadata or SQL scripts, the tool generates interactive diagrams that provide a clear overview of structural interdependencies and data associations. The platform distinguishes itself through its focus on automated documentation and schema synchronization. I
ChartDB is an open-source database schema visualizer that automatically generates interactive ER diagrams by connecting to live database instances and parsing metadata, supports multiple relational databases, detects foreign keys, and provides diagram exporting and editing — precisely the reverse-engineering and documentation tool this search is after.
django-extensions is a specialized toolset for the Django framework providing utilities for database visualization, application debugging, development environment management, and custom management command execution. It functions as a collection of tools designed to automate development tasks and inspect the internal state of an application. The project provides a database visualization tool for generating diagrams of data models and comparing schemas to map complex relationships. It also includes a debugging utility to intercept email traffic and audit user permissions to troubleshoot applica
django-extensions is a Django-specific toolkit that includes a command to generate ER diagrams from Django model definitions, making it a schema visualization and reverse-engineering tool for Django projects, but it does not provide a standalone database connection to arbitrary databases or interactive diagram editing.
DBeaver is a universal database client and administration environment designed for managing diverse relational and non-relational database systems. It provides a unified graphical interface that enables users to perform data manipulation, schema migration, and performance monitoring across multiple platforms. By utilizing a standardized driver abstraction layer, the application translates generic requests into database-specific commands, ensuring consistent interaction regardless of the underlying technology. The project distinguishes itself through an extensible, plugin-based architecture th
DBeaver is a universal database client that connects live to many database systems and includes built-in ER diagram generation from schema, with support for foreign key detection, diagram export, and interactive editing – exactly the reverse-engineering and documentation tool this search is after.
Atlas is a SQL database schema management tool and database infrastructure as code framework. It provides a declarative database migration engine that computes the difference between a desired schema state and the current database state to automatically generate the necessary SQL for transitions. The project distinguishes itself through a comprehensive suite of analysis and visualization tools, including a database schema linter that detects destructive changes and data loss risks. It also features a SQL schema visualization tool capable of generating entity-relationship diagrams from extract
Atlas is a schema management tool that includes a built-in SQL schema visualization feature for generating ER diagrams from live database connections, fitting your need for automatic reverse-engineering and documentation despite its broader migration focus.
Database documentation built easy
SchemaSpy connects to a live database, automatically analyzes its schema and relationships, and generates HTML documentation with entity-relationship diagrams, covering the core reverse-engineering need; it lacks interactive diagram editing but provides exportable diagrams.
Open-source data modeling tool designed for PostgreSQL. No more typing DDL commands. Let pgModeler do the work for you!
pgModeler is an open-source data modeling tool for PostgreSQL that connects to a live database and automatically generates ER diagrams from its schema — exactly the reverse-engineering and visualization you need, though it only supports PostgreSQL, not multiple RDBMS.
This project is a MySQL database driver and client for Node.js. It provides a JavaScript implementation of the MySQL protocol to facilitate connecting to, querying, and managing data within MySQL databases. The driver includes a connection pool manager to maintain a cache of reusable database connections, reducing the overhead of frequent network handshakes. It also supports row-by-row result streaming to process large datasets without loading entire result sets into memory. Core capabilities cover SQL query execution, the management of database transactions, and the coordination of multiple
This is a MySQL database driver for Node.js, offering connection and query execution, but it does not generate ER diagrams or visualize schemas — it's a component you might use to build a schema visualization tool, not the tool itself.
This project is a Node.js client for PostgreSQL databases, providing a protocol parser to translate raw binary streams into JavaScript objects. It serves as a driver for executing queries, managing data, and integrating Node.js applications with PostgreSQL backends. The library includes a connection pool manager to reduce network overhead by caching reusable connections and a result streamer that uses cursors to retrieve large datasets incrementally. It also functions as an event listener for subscribing to asynchronous server-side notifications to trigger real-time application events. Broad
This is a PostgreSQL database driver for Node.js — it connects to databases and executes queries, but it does not generate ER diagrams, detect relationships, or visualize schemas; it is a low-level building block for building such a tool, not the reverse-engineering/diagramming tool you are looking for.
Fireworks Tech Graph is a tool that generates SVG and PNG technical diagrams from natural language descriptions, supporting both English and Chinese input. It produces publication-quality diagrams for AI architectures, UML types, and other technical domains without requiring manual drawing or diagramming syntax. The tool distinguishes itself through a semantic shape vocabulary and arrow-based flow encoding that conveys component roles and data flow types through consistent geometric shapes, stroke widths, dash patterns, and colors rather than relying on textual labels. It renders the same dia
Fireworks Tech Graph generates technical diagrams from natural language descriptions rather than connecting to a live database and automatically extracting schema, so it does not match this search for a database reverse-engineering and ER diagram tool.
sqlx is a set of extensions for the Go database/sql package that reduces boilerplate code by automating the mapping of database query results directly into structs and slices. It provides a wrapper around standard database types to eliminate manual row scanning and repetitive error handling. The project distinguishes itself through named parameter binding and query placeholder rebinding, which translate generic markers into driver-specific symbols. It also enables dynamic SQL execution by allowing the application to read and execute SQL statements directly from the filesystem. The library co
sqlx is a Go library that extends database/sql with convenience features, not a schema visualization or ER diagram generation tool — it provides database connectivity and query building but lacks any diagram export, interactive editing, or automatic ER generation from schemas.
Sea-ORM is an asynchronous SQL object-relational mapper and database toolkit for mapping relational tables to strongly typed objects. It provides a relational database mapper for performing CRUD operations across MySQL, PostgreSQL, and SQLite, and includes a programmatic dynamic query builder for constructing complex SQL statements. The project distinguishes itself by providing a GraphQL schema generator that transforms database entities into typed schemas with built-in pagination and filters. It also features a dedicated database migration tool for defining and applying versioned schema chan
Sea-ORM is an asynchronous ORM library for Rust that provides database mapping and GraphQL schema generation, but it does not generate entity-relationship diagrams or offer visual schema reverse-engineering, so it is a neighbouring database toolkit rather than the diagramming tool this search requires.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| liam-hq/liam | 4.8K | TypeScript | Apache-2.0 | |
| chartdb/chartdb | 21.3K | TypeScript | agpl-3.0 | |
| 6.8K |
| Python |
| MIT |
| dbeaver/dbeaver | 50.7K | Java | Apache-2.0 |
| ariga/atlas | 8.1K | Go | apache-2.0 |
| schemaspy/schemaspy | 3.7K | HTML | LGPL-3.0 |
| pgmodeler/pgmodeler | 3.6K | C++ | GPL-3.0 |
| mysqljs/mysql | 18.6K | JavaScript | MIT |
| brianc/node-postgres | 13.2K | JavaScript | MIT |
| yizhiyanhua-ai/fireworks-tech-graph | 8K | Python | MIT |