Skip to main content
Back to packages
532 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

We'd Love Your Feedback

Tell us what you like or what we can improve

Feel free to share anything you like or dislike about this page or the platform in general.