Minimal Laravel 13.x-dev project focused on one thing:
- Laravel handles transport and persistence concerns with PHP attributes
- Respect\Validation 3 handles domain validation through DTO attributes
- one
PitchDraftDTO is reused by request mapping, validation, persistence, and API resource output
app/Http/Requests/StorePitchShowcaseRequest.phpapp/Http/Requests/StorePitchShowcaseApiRequest.phpapp/Http/Requests/PitchDraftRequest.phpapp/Data/PitchDraft.phpapp/Support/RespectAttributeValidator.phpapp/Http/Controllers/PitchShowcaseController.phpapp/Models/Pitch.phpresources/views/pitch-showcase.blade.phproutes/web.phproutes/api.phptests/Feature/PitchShowcaseTest.php
composer install
cp .env.example .env
php artisan key:generate
touch database/database.sqlite
php artisan migrate
php artisan serveOpen http://127.0.0.1:8000/showcase/pitch
API endpoints:
POST /api/showcase/pitch
php artisan test