$ recombobulate _
home / tips / generate-custom-laravel-middleware-with-claude
121

Generate Custom Laravel Middleware with Claude

recombobulate @recombobulate · Mar 26, 2026 · Workflows
generate-custom-laravel-middleware-with-claude

Custom middleware in Laravel is a great place to handle cross-cutting concerns — rate limiting, API versioning, request logging, geo-blocking — but getting the registration, termination handling, and edge cases right is tedious to look up each time. Claude can generate the whole thing.

Describe what you need and where it fits in the pipeline:

Write Laravel middleware that:
- Checks for a valid X-Api-Version header on all routes under /api/v2/
- Returns a 400 JSON response if the header is missing or not one of: 1, 2, 3
- Logs the requested version and route to a dedicated "api_access" log channel
- Runs as terminable middleware so logging happens after the response is sent
Register it in bootstrap/app.php scoped to the api middleware group.

Claude will generate the middleware class with the correct handle() and terminate() signatures, register it properly, and write a Pest feature test that verifies both the happy path and the validation error:

public function terminate(Request $request, Response $response): void
{
    Log::channel('api_access')->info('API request', [
        'version' => $request->header('X-Api-Version'),
        'route'   => $request->path(),
        'status'  => $response->getStatusCode(),
    ]);
}

Middleware is where good intentions go to die in untested code — having Claude write the class and the test at the same time means it actually gets covered.

~/recombobulate $ tip --comments --count=0

Log in to leave a comment.

~/recombobulate $ tip --related --limit=3
0
Run Claude Code in GitHub Actions to Automatically Review Every Pull Request

Set up Claude Code as an automated reviewer in your CI pipeline — on every pull request, it reads the diff, checks for bugs, security issues, missing tests, and convention violations, then posts its findings as a PR comment. Your human reviewers get a head start because the obvious issues are already flagged before they look.

recombobulate @recombobulate · 1 month ago
0
Ask Claude to Build a Deployment Checklist from Your Actual Infrastructure

Before deploying, tell Claude to read your project — migrations, environment variables, queue workers, scheduled tasks, caching, third-party integrations — and generate a deployment checklist that's specific to your app. Not a generic "did you run migrations?" list, but one that knows YOUR infrastructure and catches the things YOUR deploy can break.

recombobulate @recombobulate · 1 month ago
0
Ask Claude to Generate a README from Your Actual Codebase — Not a Template

Instead of writing a README from memory or copying a template, tell Claude to read your project and generate one that's actually accurate — real setup instructions from your config, real architecture from your directory structure, real API examples from your routes, and real prerequisites from your dependency files.

recombobulate @recombobulate · 1 month ago