icehouse-ventures/laravel-mermaid
Laravel Mermaid generates Mermaid.js diagrams directly from your Laravel app, turning models, relationships, and database schema into clean ER diagrams and flowcharts. Ideal for documentation, code reviews, and onboarding, with simple Artisan commands to render visuals that stay in sync with your co...
Architecture fit. Laravel Mermaid 2 is a developer-tooling package rather than a runtime application dependency. It generates Mermaid diagram source (including Eloquent relationship diagrams) and bundles a browser-side Mermaid 11 integration, which makes it a fit for Laravel teams that want schema/relationship visualization and diagram rendering inside admin or documentation surfaces. It is not a fit for applications that need server-side rendered images or non-Laravel services, since the rendering path depends on the bundled browser integration and Livewire navigation behavior.
Integration feasibility. Moderate. The package now targets Laravel 12 and 13 only and requires PHP 8.2+. Adoption is straightforward for greenfield or recently upgraded Laravel applications, but will require a platform upgrade for any application on Laravel 10/11 or PHP 8.1. Because it touches Livewire 4 navigation and browser rendering, integration touches the frontend build pipeline, not just Composer.
Technical risk. The primary risks are (1) version lock-in — Laravel 12/13 and PHP 8.2+ are hard requirements, so the package cannot be rolled out incrementally across a mixed-version fleet; (2) frontend coupling — Mermaid 11 is a browser dependency, and upgrades to Mermaid majors are historically a source of rendering regressions; (3) thin test surface — the release cites 7 tests / 19 assertions, which is low for a package that now claims strict rendering, multiple diagrams, Eloquent relationships, and Livewire 4 interaction coverage. The release does add PHPStan level 8, Pint, dependency audits, and real-browser SVG/Livewire coverage in the Laravel 13 demo, which partially offsets this.
Key questions.
Stack fit. Aligns with a modern Laravel stack: Laravel 12/13, PHP 8.2–8.5, Livewire 4, and a standard frontend build. Teams on Laravel 10/11, PHP 8.1, or Livewire 2/3 should treat this as blocked pending platform upgrade.
Migration path. From a prior Mermaid integration, the migration is a Composer major-version bump plus a Mermaid 10→11 frontend change. Plan for: re-publishing config, re-verifying any customized rendering options (strict rendering defaults may change output), regenerating or re-checking stored diagram source, and validating Livewire navigation behavior in any SPA-like admin area. There is no prior assessment on record, so treat this as a v2 baseline rather than a delta from a known v1 state.
Compatibility. Explicitly supported: PHP 8.2, 8.3, 8.4, 8.5; Laravel 12 and 13; Mermaid 11; Livewire 4. No stated compatibility with older Laravel, other PHP versions, or non-Livewire frontends — confirm before assuming.
Sequencing.
Maintenance. Low-to-moderate ongoing burden: the package is community-supported rather than vendor-backed, and its release cadence is tied to Laravel and Mermaid majors. Expect to re-validate on each Mermaid major and each Laravel major. The PHPStan level 8 and Pint setup lowers the cost of contributing fixes upstream if needed.
Support. No commercial support path is described. Reliance should be scoped to internal tooling or non-critical visualization; a fork-and-maintain contingency should be assumed for any use in a customer-facing path. The community credit for Laravel 13 compatibility suggests a small contributor base — bus-factor risk is real.
Scaling. Diagram generation cost scales with schema size (Eloquent relationship introspection) and with the number of diagrams rendered per page. Multiple-diagram support is a scaling consideration: rendering several Mermaid 11 diagrams in one view has measurable browser cost. Caching generated diagram source for large schemas is advisable.
Failure modes.
Ramp-up. Low for a Laravel developer — the package is configuration and blade/view integration, not a new paradigm. Budget roughly half a day for a developer already fluent in Laravel and Livewire to reach productive use, plus 1–2 days of platform validation for the upgrade path if the application is not already on Laravel 12/13. Documentation was refreshed in this release, which reduces onboarding friction.
How can I help you explore Laravel packages today?