Description
Generate API resources alongside Livewire components for SPA/mobile apps.
Proposed Syntax
php artisan crudify:generate Product --fields="name:string,price:decimal" --api
# or
php artisan crudify:generate Product --fields="name:string" --only=api
Generated Components
Example Resource
class ProductResource extends JsonResource
{
public function toArray(Request $request): array
{
return [
'id' => $this->id,
'name' => $this->name,
'price' => $this->price,
'user' => new UserResource($this->whenLoaded('user')),
'created_at' => $this->created_at->toIso8601String(),
];
}
}
Example Route
Route::apiResource('products', Api\ProductController::class);
Description
Generate API resources alongside Livewire components for SPA/mobile apps.
Proposed Syntax
Generated Components
app/Http/Resources/ProductResource.phpapp/Http/Controllers/Api/ProductController.phpApiStoreProductRequestroutes/api.phpentriesExample Resource
Example Route