austintoddj/canvas
Canvas is a minimal, elegant publishing platform for Laravel. It adds a distraction-free writing dashboard with posts, tags, and media management, so developers can launch a fast, self-hosted blog or publication without wrestling with a heavyweight CMS.
Adopt when:
Look elsewhere when:
To executives: Canvas gives us a production-ready, self-hosted publishing platform on our existing Laravel stack at effectively no licensing cost. It lets us launch blog and content-marketing surfaces in days rather than months, keeps our content and data in-house, and avoids a SaaS CMS contract. The recent releases (v7.2.3 through v7.2.5) are low-risk patches—no breaking changes, documented upgrade paths—that steadily improve the authoring experience: post titles now generate clean, SEO-friendly slugs, and duplicate slugs are resolved automatically so links don't silently break. That combination of active maintenance and low upgrade friction supports adoption.
To engineering: It's a standard Laravel package—install via Composer, run php artisan canvas:migrate and canvas:publish. v7.2.5 is a backward-compatible bug fix (unique-slug enforcement) with a short upgrade path: composer update, canvas:migrate, canvas:publish, and—if you have already published the Canvas UI—php artisan canvas:ui --force, or patch show() in your published CanvasUiController to use Post::forPublicSlug($slug). Note the behavior change: existing duplicate slugs now resolve to the earliest published post, so verify public URLs after upgrading. The package is opinionated by design—expect to extend rather than reconfigure for non-standard requirements, and plan for ongoing community-package maintenance.
How can I help you explore Laravel packages today?