Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Db Draw Laravel Package

jawira/db-draw

Generate ER diagrams from SQL files without a database connection. jawira/db-draw parses MySQL and PostgreSQL dumps to produce database structure diagrams via Graphviz in SVG, PNG, or PDF formats. Ideal for documentation and quick schema reviews.

Deep Wiki
Context7

Product Decisions This Supports

  • Documentation as a build artifact: Enables a decision to treat the ER diagram as generated output rather than a hand-maintained Confluence page — it can be regenerated from the live schema on every migration, eliminating a recurring "stale docs" chore from the backlog.
  • Build vs. buy for schema visualization: Replaces paid ER-diagram SaaS seats (dbdiagram, Lucid, ER/Studio) with a zero-cost, MIT-licensed, self-hosted generator for teams whose diagrams are read far more often than edited.
  • Onboarding and developer-experience roadmap: Supports investment in "time-to-first-PR" metrics by giving new engineers and contractors a readable, always-current map of a 50–200 table schema without database access or tribal knowledge.
  • Schema-change governance: Makes schema drift visible in pull requests — a diagram diff alongside a migration is a cheap review aid for architecture and data-model decisions (new junctions, denormalization, orphan tables).
  • Legacy modernization and migration planning: Useful input for decisions about decomposing a monolith, planning a module boundary, or scoping a data migration — a generated diagram is faster to produce and less political than a hand-drawn one.
  • Scope triage for internal tooling: Because it is a Composer library rather than a product, the decision it supports is usually "adopt as a CLI/docs step" — not "build a schema-visualization product," which would be a much larger commitment.
  • Documentation format standardization: Forces a decision on the canonical diagram dialect (PlantUML, Mermaid, Graphviz, etc.) and where it lives — repo-committed source vs. generated HTML in a docs site — which downstream teams then inherit.

When to Consider This Package

Consider it when:

  • The stack is PHP/Laravel (or any Composer-managed PHP app) and the database is relational (MySQL, PostgreSQL, MariaDB, SQL Server).
  • The schema is large enough that SHOW TABLES is no longer explanatory — roughly 20+ tables, or anything with meaningful FK relationships.
  • Documentation is currently manual, outdated, or nonexistent, and nobody owns it.
  • You want diagrams produced in CI or a make docs/Artisan-style command with no external service, no credentials leaving the network, and no per-seat cost.
  • Your team already reads diagrams as text/code (PlantUML, Mermaid) and prefers reviewable, diffable artifacts in version control over binary or hosted canvases.
  • The blast radius of failure is low: this is documentation, not a runtime dependency on the request path.

Look elsewhere when:

  • You need interactive, collaborative, or drag-to-edit diagramming — this is a generator, not an editor. Pair it with a hosted tool or accept read-only output.
  • You need guaranteed vendor support, an SLA, security review artifacts, or a long-term maintenance commitment. At ~22 stars the project has a small maintainer base and a real bus-factor risk.
  • The data store is non-relational (document, graph, wide-column) or the schema is defined primarily in code without DB-level FK constraints — the output quality degrades sharply.
  • Your engineering org is not PHP-based; shelling out to a PHP binary from a Node/Go/JVM pipeline adds a runtime you otherwise don't need.
  • You require rich data-dictionary output (column comments, PII classification, lineage, ownership). A generator shows structure; governance metadata usually needs a catalog tool.
  • Diagrams must be produced in real time inside an application UI — this is a build-time/CLI concern, not an embedded rendering library.
  • Your security posture forbids a library with a thin dependency/maintenance trail, or you cannot pin and vendor it internally.

Adoption criteria to apply: pin the version, review the transitive dependency tree (DB introspection typically pulls in a DBAL), confirm the supported output formats match your docs pipeline, and verify it runs against a schema-only dump — never point it at production credentials.

How to Pitch It (Stakeholders)

For executives: This is a small, MIT-licensed, zero-cost PHP library that turns our existing database schema into an up-to-date ER diagram automatically. It removes a manual documentation task, shortens onboarding for new engineers and contractors, and makes schema changes reviewable in code. Cost is effectively one engineer-day to wire into the pipeline; the only risk is that it is a small open-source project with limited maintainers, which we mitigate by pinning the version and treating the diagrams as regenerable artifacts rather than a critical system.

For engineering leads: Low-commitment, high-leverage addition to the docs toolchain. It introspects the schema and emits a diagram in a text-based format we can commit, diff, and review — so the diagram stops rotting the moment the first migration lands. It fits naturally into a Composer/Laravel repo and a CI job, has no runtime footprint, and imposes no architectural constraint. The trade-off is explicit: we get automation and freshness, but not an editor, not a data catalog, and not a vendor with a support contract. Recommended as an opt-in docs step with a pinned version, evaluated on one representative service before wider rollout.

For the team asking "why not just use dbdiagram/Lucid?": Those are good tools for designing a schema collaboratively. This solves a different problem — keeping the already-shipped schema documented without anyone remembering to update a canvas. Use both if you like: hosted tool for design conversations, generated diagram for the living reference.

Decision requested: approve a one-day spike to wire it into the docs pipeline for one service, with a go/no-go based on output quality on our largest schema and the dependency footprint.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
elmogy/larafast
xeviant/laravel-paystack
gorilladash/laravel-website-sdk
martialbe/flysystem-oss
chondal/3312client
jeroen-g/flickr
opscale-co/nova-genbi
itsjustvita/laravel-retention
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels