austintoddj / canvas
A Laravel publishing platform
Package info
pkg:composer/austintoddj/canvas
Fund package maintenance!
Requires
- php: ^8.3
- ext-json: *
- illuminate/auth: ^12.0|^13.0
- illuminate/bus: ^12.0|^13.0
- illuminate/console: ^12.0|^13.0
- illuminate/container: ^12.0|^13.0
- illuminate/contracts: ^12.0|^13.0
- illuminate/database: ^12.0|^13.0
- illuminate/events: ^12.0|^13.0
- illuminate/filesystem: ^12.0|^13.0
- illuminate/http: ^12.0|^13.0
- illuminate/mail: ^12.0|^13.0
- illuminate/pagination: ^12.0|^13.0
- illuminate/queue: ^12.0|^13.0
- illuminate/routing: ^12.0|^13.0
- illuminate/support: ^12.0|^13.0
- illuminate/translation: ^12.0|^13.0
- illuminate/validation: ^12.0|^13.0
- illuminate/view: ^12.0|^13.0
Requires (Dev)
- larastan/larastan: ^3.10
- laravel/pint: ^1.29
- mockery/mockery: ^1.6
- orchestra/testbench: ^10.8|^11.0
- pestphp/pest: ^3.8|^4.0
- pestphp/pest-plugin-arch: ^3.8|^4.0
- pestphp/pest-plugin-laravel: ^3.2|^4.0
This package is auto-updated.
Last update: 2026-08-01 14:02:00 UTC
README
About Canvas
Canvas is an open-source publishing platform for Laravel. Drop it into an existing application, use your own authentication, and start writing.
- Distraction-free editor with tags, topics, and media uploads
- Monthly trends and reader insights
- Contributor, Editor, and Admin roles
- Integrations: Unsplash, AI writing, outbound webhooks, and weekly digest
- Optional starter reader frontend via
canvas:ui
Requirements
- PHP >= 8.3
- Laravel >= 12
- Working authentication for the guard Canvas uses (
webby default)
Installation
composer require austintoddj/canvas php artisan canvas:install
Grant admin access to an existing user:
php artisan canvas:make-admin your@email.com
Visit /canvas.
Optional Frontend
Use the canvas:ui Artisan command to publish a starter reader frontend — Blade views, a controller stub, and routes. It gets you a public blog at /canvas-ui without building one from scratch. Customize whatever you like!
php artisan canvas:ui
Visit /canvas-ui.
Upgrading
Canvas follows Semantic Versioning and increments versions as MAJOR.MINOR.PATCH.
- Major versions may contain breaking changes — follow the upgrade guide for a step-by-step breakdown.
- Minor and patch versions should never contain breaking changes, so you can safely update by following the steps below.
composer update austintoddj/canvas php artisan canvas:publish
To publish assets automatically after Composer updates, add this to your application’s composer.json:
{
"scripts": {
"post-update-cmd": ["@php artisan canvas:publish --ansi"]
}
}
Contributing
Thank you for considering contributing to Canvas! The contribution guide can be found here.
Testing
composer test
License
Canvas is open-sourced software licensed under the MIT license.