install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/noartem/skills/laravel-controller-cleanup" ~/.claude/skills/comeonoliver-skillshub-laravel-controller-cleanup && rm -rf "$T"
manifest:
skills/noartem/skills/laravel-controller-cleanup/SKILL.mdsource content
Controller Cleanup
Keep controllers small and focused on orchestration.
Move auth/validation to Form Requests
- Create a Request class (e.g.,
) and useStoreUserRequest
+authorize()rules() - Type-hint the Request in your controller method; Laravel runs it before the action
php artisan make:request StoreUserRequest
Extract business logic to Actions/Services
- Create a small Action (one thing well) or a Service for larger workflows
- Pass a DTO from the Request to the Action to avoid leaking framework concerns
final class CreateUserAction { public function __invoke(CreateUserDTO $dto): User { /* ... */ } }
Prefer Resource or Single-Action Controllers
- Use resource controllers for standard CRUD
- For one-off endpoints, use invokable (single-action) controllers
Testing
- Write feature tests for the controller route
- Unit test Actions/Services independently with DTOs