finds.dev← search

// the find

drawdb-io/drawdb

★ 37,363 · JavaScript · AGPL-3.0 · updated Jun 2026

Free, simple, and intuitive online database diagram editor and SQL generator.

drawDB is a browser-based ERD editor that lets you visually design database schemas and export real SQL DDL for MySQL, PostgreSQL, SQLite, MSSQL, MariaDB, and Oracle. No account required — everything stores in IndexedDB locally. Aimed at developers and teams who want to sketch schemas without spinning up a tool like DBeaver or paying for Lucidchart.

Per-dialect SQL export is genuinely well-structured — separate files per database (exportSQL/postgres.js, exportSQL/mssql.js, etc.) rather than one god-function with a switch statement. Import SQL back to diagram works bidirectionally, which is rare and actually useful when reverse-engineering a legacy schema. Collaboration and sharing are optional and self-hostable via a separate drawdb-server repo, so the core tool has no forced SaaS dependency. The i18n coverage is unusually thorough for a tool this size — 50+ locale files including RTL languages (Arabic, Hebrew, Farsi, Urdu).

All state lives in IndexedDB with no server sync by default, so losing a browser profile means losing your diagrams — a real risk for anything you'd care about longer than a session. The context API surface is fragmented across 14 separate context files, which means any moderately complex feature has to thread through multiple providers; this is already showing in the collab context (CollabContext.jsx sitting next to DiagramContext.jsx with unclear ownership). No test suite visible anywhere in the directory tree — a SQL generator with zero automated tests is an accident waiting to happen when someone adds Oracle-specific edge cases. Migration diffing (diffToSQL.js) looks like an afterthought — it's a single utility file, not integrated into a proper migration history model, so it will miss rename-vs-drop-and-recreate scenarios.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →