home / skills / leeovery / claude-laravel / laravel-jobs

laravel-jobs skill

/skills/laravel-jobs

npx playbooks add skill leeovery/claude-laravel --skill laravel-jobs

Review the files below or copy the command above to add this skill to your agents.

Files (2)
SKILL.md
1.3 KB
---
name: laravel-jobs
description: Background jobs and event listeners for async processing. Use when working with queued jobs, background processing, events, or when user mentions jobs, queues, listeners, events, async processing.
---

# Laravel Jobs

Background jobs and event listeners: thin delegation layers to actions.

## Core Concept

**[jobs-listeners.md](references/jobs-listeners.md)** - Job patterns:
- Jobs as thin delegation layers
- Queue configuration
- Retry logic and timeouts
- Unique jobs
- Job middleware
- Event listeners
- When to use jobs vs sync actions

## Pattern

```php
final class ProcessOrderJob implements ShouldQueue
{
    use Dispatchable, Queueable;

    public function __construct(
        public readonly int $orderId,
    ) {}

    public function handle(ProcessOrderAction $action): void
    {
        $order = Order::findOrFail($this->orderId);

        $action($order);
    }

    public function middleware(): array
    {
        return [new WithoutOverlapping($this->orderId)];
    }
}

// Listener
final class SendOrderConfirmationListener
{
    public function handle(OrderPlaced $event): void
    {
        SendOrderConfirmationJob::dispatch($event->order->id);
    }
}
```

Jobs delegate to actions. Keep domain logic in actions, not jobs.