Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a real feature in Laravel: routing → controllers → the Eloquent ORM with migrations and relationships, Blade views (or an API), request validation, and authentication. Avoid the N+1 query problem (use eager loading). Keep controllers thin (logic in models/services), use the service container for dependencies, and follow PSR-12 (enforce with PHP CS Fixer) plus PHPStan static analysis. Write tests — PHPUnit or Pest — including at least one FEATURE test that hits a route and asserts the response against a test database, covering an auth-protected path.
Routing/controllers/Eloquent + migrations/validation/auth used correctly; no N+1 (eager loading); thin controllers.
PHPUnit/Pest unit + feature tests (route hits against a test DB, incl. an auth path); tests pass.
PSR-12 (CS Fixer) + PHPStan static analysis clean; DI via the container; typed.
Clean separation; idiomatic modern Laravel.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A tested Laravel app with auth ## Goal Build a real feature in Laravel: routing → controllers → the Eloquent ORM with migrations and relationships, Blade views (or an API), request validation, and authentication. Avoid the N+1 query problem (use eager loading). Keep controllers thin (logic in models/services), use the service container for dependencies, and follow PSR-12 (enforce with PHP CS Fixer) plus PHPStan static analysis. Write tests — PHPUnit or Pest — including at least one FEATURE test that hits a route and asserts the response against a test database, covering an auth-protected path. ## Acceptance criteria - [ ] Laravel fundamentals: Routing/controllers/Eloquent + migrations/validation/auth used correctly; no N+1 (eager loading); thin controllers. - [ ] Testing: PHPUnit/Pest unit + feature tests (route hits against a test DB, incl. an auth path); tests pass. - [ ] Code quality: PSR-12 (CS Fixer) + PHPStan static analysis clean; DI via the container; typed. - [ ] Structure: Clean separation; idiomatic modern Laravel. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.