REST API generation and serialization for Laravilt Resources.
composer require laravilt/apiThe API package enables automatic REST API generation from Laravilt Resources, providing JSON serialization for web APIs and mobile applications.
- Automatic API endpoint generation from Resources
- JSON serialization with customizable formatting
- Field-level control over API exposure
- Support for relationships and nested resources
- Pagination and filtering
- API versioning support
use Laravilt\Api\Api;
use Laravilt\Api\Components\ApiField;
class UserApi extends Api
{
public function fields(): array
{
return [
ApiField::make('id'),
ApiField::make('name'),
ApiField::make('email'),
ApiField::make('created_at')
->format('Y-m-d H:i:s'),
];
}
}ApiField::make('email')
->hidden(fn () => !auth()->user()->isAdmin())
->transform(fn ($value) => strtolower($value));
ApiField::make('avatar')
->computed(fn ($record) => $record->getAvatar());
ApiField::make('posts')
->relationship('posts')
->nested(PostApi::class);// Single record
$user = User::find(1);
$apiData = UserApi::make($user)->toArray();
// Collection
$users = User::all();
$apiData = UserApi::collection($users)->toArray();composer test # Run tests
composer test:coverage # With coverage
composer test:types # PHPStan analysis
composer test:style # Code style check
composer format # Auto-fix code stylePlease see CHANGELOG for more information.
Please see CONTRIBUTING for details.
Please review SECURITY for security issues.
The MIT License (MIT). Please see License File for more information.