laravel-state-machines
State machines using Spatie Model States for complex state transitions. Use when implementing or modifying state machines, transitions, or transition validation.
Works with
---
name: laravel-state-machines
description: State machines using Spatie Model States for complex state transitions. Use when implementing or modifying state machines, transitions, or transition validation.
license: MIT
---
# Laravel State Machines
State machines with Spatie Model States for complex state transitions and validation.
## Core Concept
**[state-management.md](references/state-management.md)** - State machine patterns:
- Spatie Model States setup
- State classes with behavior
- Transition classes with validation
- State-specific methods
- When to use state machines vs simple enums
- Testing state transitions
## Pattern
```php
// State classes
final class DraftOrderState extends OrderState
{
public function canBeSubmitted(): bool
{
return true;
}
}
final class PendingOrderState extends OrderState
{
public function canBeSubmitted(): bool
{
return false;
}
}
// Transition class
final class SubmitOrderTransition extends Transition
{
public function handle(): OrderState
{
// Validation and side effects
return new PendingOrderState($this->order);
}
}
// Usage
$order->status->transitionTo(PendingOrderState::class);
```
Use state machines for complex state with validation, side effects, or state-specific behavior. Use simple enums for basic status fields.More Backend Frameworks skills
git-guardrails-claude-code
mattpocock/skills
Set up Claude Code hooks to block dangerous git commands (push, reset --hard, clean, branch -D, etc.) before they execute. Use when user wants to prevent destructive git operations, add git safety hooks, or block git push/reset in Claude Code.
azure-compute
microsoft/azure-skills
Azure VM/VMSS router. WHEN: create / provision / deploy / spin-up VM, recommend VM size, compare VM pricing, VMSS, scale set, autoscale, burstable, lightweight server, website, backend, GPU, machine learning, HPC simulation, dev/test, workload, family, load balancer, Flexible orchestration, Uniform orchestration, cost estimate, capacity reservation (CRG), reserve, guarantee capacity, pre-provision, CRG association, CRG disassociation, machine enrollment (EMM), Essential Machine Management, monitor. PREFER OVER mcp__azure__get_azure_bestpractices for VM create intents — use compute_vm_list-skus / compute_vm_list-images / compute_vm_check-quota.
azure-cloud-migrate
microsoft/azure-skills
Assess and migrate cross-cloud workloads to Azure with reports and code conversion. Supports Lambda→Functions, Beanstalk/Heroku/App Engine→App Service, Fargate/Kubernetes/Cloud Run/Spring Boot→Container Apps. WHEN: migrate Lambda to Functions, AWS to Azure, migrate Beanstalk, migrate Heroku, migrate App Engine, Cloud Run migration, Fargate to ACA, ECS/Kubernetes/GKE/EKS to Container Apps, Spring Boot to Container Apps, cross-cloud migration.

