webmintydotcom/laravel-quickstart
Laravel Quickstart is a scaffolding package that speeds up new Laravel projects. It provides ready-made authentication, layouts, configuration, and common setup so you can skip repetitive boilerplate and start building features right away.
What this package is. webminty/laravel-quickstart is not a runtime library you composer require — it is a project scaffold (starter kit) that establishes baseline conventions: Pint rules, Rector config, Pest test harness, CI-adjacent tooling, README standards, and now AI agent definitions. Its "integration" model is scaffolding new repositories or diffing its conventions into existing ones. That materially changes how a TPM should read a semver-major release: the blast radius is every downstream repository that inherited these configs, not a single dependency graph.
Architecture fit. 5.0.0 is a coherent, opinionated modernization pass: it aligns the scaffold to PHP 8.4 / Laravel 13, upgrades the whole Pest toolchain to 5.x, repairs a previously broken rector.php, and adopts Laravel 13's attribute-based #[Fillable] / #[Hidden] conventions. The internal consistency is good. The strategic tension is that the scaffold now pins to a very forward-leaning platform floor (webminty/boost-webminty-guidelines ^4.0 → PHP 8.4+, Laravel 13+). Scaffolds exist to reduce onboarding friction; a scaffold that outruns the platform your delivery teams are actually on transfers that friction to them instead.
The final reversal is the highest-signal change. Removing the final_* Pint rules and stripping final from all classes is a deliberate policy reversal, not a bug fix. Teams that inherited the 4.x conventions have likely propagated final through their codebases or wired the Pint ruleset into CI gates. This will surface as either (a) mass style diffs on next Pint run, or (b) divergent conventions between the scaffold and downstream repos. Whichever way it lands, it needs an explicit decision and owner, because "the linter told me to" is not a rationale a team can sustain.
Technical risk. Four areas:
pest 5.3 plus pest-plugin-browser 5.1 and the faker/laravel/type-coverage plugins all move to 5.x. This is a coordinated ecosystem jump — plugin version skew is the classic failure mode, and type-coverage in particular tends to break on major bumps.tests/Browser suite bound to the app test case, and gitignored screenshots. That is a second toolchain (Node) and a second CI execution path, added to a package whose prior scope was PHP-only.Key questions for the maintainer:
final removal driven by a specific interoperability or mocking requirement, and is it reversible via config?Stack fit. Assume this is adopted as an org-wide starter template rather than a per-project dependency. In that framing, 5.0.0 is a template version bump: it wants to be applied at project creation, and reconciled into existing repos as a deliberate convention migration. Do not treat it as a drop-in upgrade — the final policy change and the Pest major mean existing repos will not "just work" after syncing.
Migration path. Two distinct tracks, and they should be sequenced separately:
Track A — existing scaffold-derived repos (the risky one).
final policy centrally before touching code. Either stay on the 4.x ruleset (and pin it) or accept the churn — but not both across the fleet.pest 5.3, pest-plugin-browser 5.1, faker/laravel/type-coverage 5.x together) to avoid plugin skew, then run the suite.rector.php and the #[Fillable]/#[Hidden] attribute changes in an isolated PR — these are mechanical but touch many files and will conflict with in-flight work.Track B — new projects. Simpler: scaffold from 5.0.0 directly, but confirm the PHP 8.4/Laravel 13 floor against the runtime support matrix first, and decide up front whether the Claude Code agents ship enabled.
Compatibility. Verify at minimum: PHP 8.4 availability in local Docker/CI images; Laravel 13 support in any first-party or vendor packages the org relies on; Node version required by Playwright and concurrently 10; prettier-plugin-tailwindcss 0.8 against the Tailwind version in use. The boost-webminty-guidelines ^4.0 constraint is the single point that encodes the whole platform floor — pin it explicitly and treat its own majors as gating events.
Sequencing recommendation. Land Track B (new projects) first to generate real-world evidence on the Pest 5 / Laravel 13 combination, then run Track A for existing repos once the toolchain has a few weeks of soak. Browser testing and the AI agents should be separate, individually revertible changes — bundling them into the same adoption wave makes rollback of the risky parts impossible.
Maintenance. The scaffold now governs three toolchains — PHP (Pint, Rector, Pest), Node (Playwright, Prettier, concurrently), and AI agents (Claude Code definitions). Each has an independent release cadence, and 5.0.0 demonstrates the coupling cost: a single Pest major forced a coordinated bump across five packages. Budget a recurring owner for template currency; a stale scaffold is worse than none, because downstream repos silently diverge. The final reversal is a maintenance signal too — convention churn in a template propagates to every derived repo and is expensive to unwind.
Support. Expect inbound questions concentrated in three buckets: "the linter now wants different code" (final), "our PHP/Laravel version is rejected" (the 8.4/13 floor), and "browser tests fail in CI" (Playwright browser install and headless deps). Pre-empt all three with a short upgrade note in the README covering the platform floor, the final decision, and CI prerequisites for Playwright. Existing README work documents Laravel 13, the standards, the browser plugin, and the agents — that is good, but it documents the new state, not the transition; the transition is what people will actually ask about.
Scaling. Scaffold scaling is about fleet consistency, not throughput. The failure mode at scale is drift: N repos on M different scaffold versions with incompatible Pint rules, at which point shared CI and cross-repo refactors become unreliable. Mitigate with a single version pin per repo, a documented upgrade cadence (e.g. follow scaffold majors within one quarter), and a matrix job in the template repo that exercises the combinations you claim to support.
Failure modes to watch.
final removal merged into the template, then a repo's next pint --test fails on a hundred files mid-sprint.rector.php shipped broken in 4.x (crashing on an unknown strictBooleans option) is a coverage gap — add a CI step that actually executes Rector and Pint, not just installs them.Ramp-up. Low for a developer creating a new project — the README covers the standards, and the agents are self-describing. Moderate for whoever owns the template: they inherit the three-toolchain surface and the fleet-consistency burden. Highest for teams migrating an existing repo, because that path requires the final policy decision plus a Pest 5 test-suite pass, and neither is a mechanical task. Recommend designating one engineer as template owner, running the first Track A migration as a pilot in a single low-risk repo, and only then generalizing — the evidence from that pilot should also settle whether the Laravel 13 / PHP 8.4 floor is realistic for the org or whether a 4.x maintenance line is needed.
How can I help you explore Laravel packages today?