Skip to main content
Back to packages
533 GitHub stars

ahmedesa/laravel-api-tool-kit

View on GitHub

Description

Supercharge your API development with standardized responses, dynamic pagination, advanced filtering, and a one-click full CRUD setup.

Why Choose the Laravel API Toolkit?

🤖 Built for AI-Assisted Development

The built-in AI Skill teaches your coding assistant to generate code that follows your architecture out of the box — no more fixing AI output to match your standards.

Consistent Responses, Less Hassle

The API Response feature simplifies generating consistent JSON responses. It provides a standardized format for your API responses:

{
"message": "your resource successfully",
"data": [
...
]
}

Pagination Done Right

Don't fuss over managing the number of results per page. The dynamic pagination feature adapts effortlessly to your needs, giving you control without complications.

$users = User::dynamicPaginate();

Simplified Filtering

Refine query results with simplicity. The powerful filtering system lets you filter, sort, search, and even include relationships with ease.

Car::useFilters()->get();

Logic Made Clear

Tackle complex business logic with Actions. These gems follow the command pattern, boosting readability and maintenance for your code.

class CarController extends Controller
{
public function __construct(
private readonly CreateCarAction $createCar,
) {}
 
public function store(CreateCarRequest $request): JsonResponse
{
$car = $this->createCar->execute($request->validated());
return $this->responseCreated(trans('car.created'), new CarResource($car));
}
}

Media? Handled.

Handle file uploads and deletions like a pro. The Media Helper streamlines media management, leaving you with clean and organized file handling.

$filePath = MediaHelper::uploadFile($file, $path);

Enums for Clarity

The Enum class provides a way to work with enumerations, eliminating hardcoded values in your code:

enum UserType: string
{
case ADMIN = 'admin';
case STUDENT = 'student';
}

Related Content on Laravel Daily

Video