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.
This is a project scaffold / standards package, not a runtime library — you consume it once when creating an app, then live inside the conventions it installs. The 5.0 release moves it to a modern baseline, so start by confirming your environment can host it at all.
webminty/boost-webminty-guidelines ^4.0). If you are on PHP 8.3 or Laravel 12, stay on 4.0.x — there is no compatibility shim.composer.json — scripts (test, lint/pint, rector, browser style entries) and the dev dependency block. This tells you what "working on this project" means.pint.json / rector.php — the enforced standards.tests/Pest.php, tests/Browser/, phpunit.xml — the test harness wiring, including how tests/Browser binds to the app test case..claude/agents/ — the eight agents (reviewers, test writer, browser test writer, runners, docs keeper). Skim their prompts; they encode the team's expectations better than any style guide.composer test, the lint/format task, rector --dry-run), and run the browser suite against the default page. You are validating that Playwright, the browser plugin, and the app test case binding all work on your machine before you commit your team to it.Greenfield: let the scaffold drive. Create the project, then immediately run formatting and Rector in dry-run to see the intended house style applied to your own first commit. Keep the generated pint.json/rector.php untouched for the first sprint so you learn the conventions rather than fighting them.
Brownfield: adopt in slices, not wholesale. This package's value in an existing app is its configs and agents, not its directory layout. Port in this order: (1) Pint rules, (2) Rector config, (3) Pest setup, (4) browser tests, (5) agents. Each slice is independently revertible, which matters because the Rector run in 5.0 applies #[Fillable] and #[Hidden] attribute changes — that is a large, cross-cutting diff you want isolated from a Pint reformat.
Standards-as-CI. Wire the same scripts the scaffold uses into CI verbatim: format check, static analysis, Rector --dry-run (so config drift fails the build), then Pest. Because Rector is now on #[Fillable]/#[Hidden], CI will police new models that use $fillable/$hidden arrays instead of attributes — that is the intended enforcement, and it is the cheapest way to keep the codebase consistent.
Browser tests as a separate, slower lane. tests/Browser is bound to the app test case and driven by Playwright via pest-plugin-browser. Keep them out of the fast unit loop: run them on a pre-push hook or a dedicated CI job, not on every save. Screenshots are git-ignored by design, so treat them as local debugging artifacts — if you need failure evidence in CI, upload them as build artifacts rather than trying to commit them.
Use the agents as review accelerators, not gatekeepers. The reviewer and test-writer agents are most valuable before opening a PR: point the reviewer at a diff, point the test writer at a new controller or Livewire component, and use the docs keeper when you change public behaviour. The browser test writer agent is the one to reach for when a feature is hard to express in a feature test.
Integration tip: the guidelines package (webminty/boost-webminty-guidelines) is where the actual rules live. When a convention confuses you, look there before assuming the quickstart is wrong — the quickstart is largely a thin installer around it.
final is gone — including the final_* Pint rules. If your team enforced final classes via this package, 5.0 silently stops enforcing it. Either accept the change or re-add the rules locally; do not assume a passing Pint run means your classes are still final.rector.php was crashing on an unknown strictBooleans option. If you copied the old config into your own project, you inherited that crash. Diff your rector.php against 5.0's and remove the dead option; also clear any Rector cache if you were working around it.#[Fillable] / #[Hidden] migration is behavioural-looking but is not. It changes how models declare guarded attributes; verify that any model relying on $guarded = [] or dynamic fillable logic still behaves, and check factories/seeders, which are the usual casualties of a mass attribute rewrite.pest-plugin-browser 5.1, plus the faker, laravel, and type-coverage plugins. Mismatched plugin majors produce confusing failures (missing expectations, unresolved helpers) rather than clean errors. Update the whole family in one commit.composer install can still fail the browser suite. Document the post-install browser step in your own onboarding notes; the scaffold's README covers the plugin but that step is the classic first-day blocker.composer update on an older runtime gives you a dependency-resolution error that reads like a package bug. Check php -v before filing anything.concurrently 10 and prettier-plugin-tailwindcss 0.8 are dev-tooling bumps — low risk, but if your package.json scripts pin task names or rely on older concurrently flag syntax, re-run your dev and build scripts once after upgrading.tests/Browser is the seam to customise — that is where you add authentication helpers, seeded fixtures, or a base URL override for a containerised CI environment.How can I help you explore Laravel packages today?