laravel-frontend-presets/paper
Paper is a Laravel frontend preset that swaps out the default auth and app scaffolding for a clean, minimal starting point. Install it to generate views, routes, and assets so you can skip boilerplate and start building your UI right away.
Architecture fit. Unchanged in kind. Paper Dashboard remains a frontend preset — a one-shot scaffolding artifact rather than a runtime dependency. v1.0.5 does not add features, services, or configuration surface; it is a compatibility claim. The architectural question it answers is narrow but real: does the preset pipeline still exist on Laravel 10? Laravel 9/10 have no first-party preset command, so the maintainer has either (a) reimplemented the command against laravel/ui's ui extension point, (b) switched to a plain vendor:publish of views/routes/assets, or (c) only bumped the composer.json constraint and left the mechanism to break. The difference between (a)/(b) and (c) is the whole of the integration risk, and the one-line release note does not tell us which. Until verified, treat the architecture as plausibly viable on Laravel 10 but unproven.
Integration feasibility. Materially improved, unverified. The previous assessment's central blocker was a hard ceiling at Laravel 8; a package that resolves and scaffolds on 10 is a different proposition, and Laravel 10 is still within a plausible support window for a 2024+ internal build. But feasibility now depends on two new gates that did not exist on 7/8:
vite.config.js, resources/js, and the package's webpack.mix.js assumptions by hand.auth views against laravel/ui, you are adopting a second, parallel auth scaffold. If it publishes views only, that is better — it makes extraction the natural path.Technical risk.
| Risk | Severity | Change vs. prior | Note |
|---|---|---|---|
| Framework version ceiling | Medium | ▼ from High | Claimed 10.x support removes the hard wall, but the claim is a single release-note line with no test evidence |
| Unverified compatibility claim | High | ▲ new | No CI matrix, no changelog detail, no linked diff — a one-line "Update to Laravel 10.x" is exactly the release shape that ships broken |
| Asset pipeline mismatch (Vite vs. Mix) | Medium–High | ▲ new | Laravel 10 defaults to Vite; Bootstrap 4 + vendored static assets assume Mix |
| Abandonment | High | ▼ slight | Clock reset, but a single metadata release after years of silence is not evidence of a maintenance cadence |
| Theme licensing | Medium–High | — | MIT covers the package, not the bundled Creative Tim assets; redistribution terms still unconfirmed |
| Front-end debt | Medium | — | Bootstrap 4 + jQuery plugin stack, vendored assets, no npm/Vite pipeline |
| Irreversibility | Medium | — | Scaffolding still overwrites resources/views, auth views, routes; no clean uninstall |
| Silent breakage | Medium–High | ▲ | Version drift now happens inside a claimed-supported range, which is harder to detect than an outright command-not-found |
Key questions.
composer.json constraint bump? The answer determines whether this is a revival or a false positive.laravel/ui, and at which major? Does that conflict with Breeze/Fortify if either is present?Stack fit. Adopt only for greenfield or disposable internal tooling on Laravel 10 with a Bootstrap-compatible design language already accepted by the team. Still reject for customer-facing surfaces and for teams standardised on Tailwind/Vite — and note that on Laravel 10 the Vite/Tailwind default is now the mainstream path, not an alternative one, so the number of teams for whom this preset is a clean fit has shrunk even as compatibility has improved.
Migration path. The recommendation is unchanged and, if anything, reinforced: extract, don't depend. Run the preset once in a scratch Laravel 10 application, then lift the generated resources/views, static assets, and route stubs into the target repo as first-party code and drop the composer requirement. v1.0.5 makes this more attractive, not less — a package that just proved it can lag four major versions and then surface with a one-line note is not a package to pin a long-lived application to. Extraction also neutralises the Vite/Mix question, because you rebuild the asset loading in the target project's pipeline anyway.
If extraction is rejected, pin the exact release and record both the Laravel constraint and the verified-on-10.x spike result in the ADR. Do not pin on the strength of the release note alone.
Compatibility. Three checks, revised for v1.0.5:
composer.json admits laravel/framework ^10.0 and the package's own command registration works on 10 — constraint and behaviour are different things.laravel/ui presence/major if the preset delegates to it; alternatively confirm it works without it.Sequencing. Revised; the spike is now the decision gate rather than a formality.
Maintenance. Still entirely ours, and v1.0.5 does not change the arithmetic — one release after a multi-year gap is not a maintenance cadence. What it changes is the starting position: the fork now begins on a framework version with runway rather than on one already out of support. Budget remains a few days of front-end effort per year, plus a one-off Vite migration if the package still ships Mix. Keep the review trigger but tighten it: treat the package as archived if there is no release within 12 months and no visible response to Laravel 11/12. Given this release's shape, weight the trigger toward "no evidence of testing" rather than "no commit".
Support. No vendor, no SLA, no community corpus — unchanged. The v1.0.5 release note is itself a support signal: one sentence, no migration guidance, no breaking-change callout, no test evidence. Plan for source-reading as the primary troubleshooting method, and document the upstream release SHA in the fork so a future engineer can diff. Creative Tim's documentation still describes the HTML theme, not the Laravel preset; the translation layer cost persists.
Scaling. Non-issue, unchanged. Static CSS/JS plus server-rendered Blade scales with the host application. The only caveat remains the vendored bundle size (whole Bootstrap 4 + jQuery + plugins, partly unminified) — irrelevant behind auth, a Core Web Vitals concern on public surfaces. If v1.0.5 moved to Vite, this improves; if not, it does not.
Failure modes.
composer.json admits Laravel 10 but the preset command was never adapted; installs cleanly, fails on artisan. The most likely failure of this specific release.layouts/auth views with no merge and no undo.Ramp-up. Initial integration remains low — an afternoon for anyone comfortable with Blade and Bootstrap, assuming the verify step passes. The organisational cost is unchanged: the team accepts ownership of a frozen front-end stack, and that decision is far harder to reverse than to make. v1.0.5 lowers the technical barrier to adoption without lowering the ownership barrier, which is the distinction a TPM should hold onto here.
Bottom line. v1.0.5 is a genuine improvement to the one risk that most constrained adoption — the Laravel version ceiling — and it is enough to warrant re-testing, not enough to warrant depending. A single-line release note with no test evidence, no mechanism detail, and a Bootstrap 4/jQuery front end against a Vite-default skeleton leaves the core judgement intact. Recommendation: verify the 10.x claim with a half-day spike; if it passes, extract the views and assets into a Laravel 10 app as first-party code and drop the composer dependency; if it fails, revert to the prior conclusion and default to Breeze/Jetstream plus a maintained theme.
How can I help you explore Laravel packages today?