- How do I install Canvas in a Laravel application?
- Install the package with composer require cnvs/canvas, then run the package's documented publish steps for configuration, migrations, and assets. Canvas is a package rather than a standalone app, so your existing Laravel application remains the runtime. No sidecar container or Node toolchain is required on the host.
- Which Laravel and PHP versions does Canvas support?
- Canvas targets Laravel 12 and 13 with PHP 8.3 or newer. That excludes teams still on Laravel 10 or 11 and PHP 8.1. The package depends on illuminate/* contracts rather than laravel/framework, which keeps its blast radius smaller during host framework upgrades.
- Does Canvas require Node or a frontend build step?
- No. The admin interface is a prebuilt React single-page app served from public/vendor/canvas, so the host does not need a Node toolchain. The tradeoff is that build artifacts are committed and served directly, meaning SPA security patches arrive through package releases rather than a host-side rebuild.
- Is Canvas a full CMS or a package inside my Laravel app?
- Canvas is a package, not a separate application. It ships a PHP API surface, package routes, published config, migrations, and a prebuilt admin SPA, while your host Laravel app keeps its auth guard, queues, storage disks, database, and cache. Treat it as a bounded publishing and admin subsystem, not a platform migration.
- How does Canvas handle authentication, users, and roles?
- This is an integration point to verify early. Confirm whether Canvas' auth and roles model composes with your identity model or expects a specific user shape, and which Laravel auth guard it binds to. Also check whether it can be scoped to a separate guard or middleware group.
- Where are images and uploads stored in Canvas?
- The available evaluation flags upload persistence as an open question. Confirm whether featured images and Unsplash imports use the host disk, an S3 disk, or Canvas-specific storage. Resolve that before relying on it in production.
- Does Canvas send content to a third-party AI service?
- The evaluation raises this as a key question rather than a settled fact. Verify whether the AI-writing integration calls an external LLM using host-provided keys and exactly what content leaves your host. If enabled, review it against your data governance requirements.
- Is Canvas production-ready and well maintained?
- Canvas has 3,356 GitHub stars but a reported dependents count of zero, which is a contradiction worth resolving before commitment. It is a single-author MIT project with no commercial backing or vendor SLA, and support runs through GitHub issues. The v7.2.3 patch suggests active maintenance, but one patch is not a support model.
- What are the upgrade steps for Canvas?
- The v7.2.3 release notes describe composer update, followed by php artisan canvas:migrate and php artisan canvas:publish. The evaluation warns that this does not match the php artisan migrate or canvas:ui sequence assumed in earlier planning. Reconcile against the package's actual command list before writing your runbook.
- Can Canvas run alongside an existing CMS or multi-tenant app?
- That needs validation before adoption. Determine whether Canvas is meant to replace existing CMS content or run alongside it, and whether it assumes a single-tenant user table. Also check for collisions in migrations, foreign keys, route prefixes, and middleware groups.