Building robust APIs with Laravel just got easier. Introducing the Laravel API Starter Kit—a modern, Dockerized foundation designed to accelerate your backend development.
Idea Brief
The Laravel API Starter Kit is a comprehensive boilerplate designed specifically for backend developers who need to quickly scaffold RESTful APIs using Laravel. Unlike general-purpose starter kits, this one focuses exclusively on API development, implementing industry best practices like Service and Repository patterns to ensure clean, maintainable, and testable code.
This starter kit aims to solve common challenges in API development by providing a standardized structure, consistent response formats, and allowing developers to focus on business logic rather than repetitive boilerplate code.
Core Features
The API Starter Kit includes the following core features:
- Service Class Pattern
- Repository Pattern
- Standardized API Response Structure
- API Versioning
- Query Builder (Dynamic filtering, sorting, and pagination using Spatie Query Builder)
- Authentication using JWT
- Request Validation
- Resource Transformers
- API Documentation
- Telescope for Development & Debugging.
- Code Quality Tools (Pint, Larastan, IDE Helper)
- Pest for Testing (already configured and ready to use, see current tests).
- Docker Configuration
- Git Hooks (pre-commit and pre-push to automatically run Pint, Larastan, and test suites)
Requirements
- PHP 8.2+
- Composer
- MySQL 8.0+ / PostgreSQL 12+ / SQLite 3
Installation
Using Laravel Installer
laravel new my-app --using=hdeawy/api-starter-kit
Using Composer
composer create-project hdeawy/api-starter-kit
Using Docker
- Install starter using Docker
docker run -it --rm \
-v $(pwd):/app \
-w /app \
-e COMPOSER_ALLOW_SUPERUSER=1 \
composer:2.5 \
create-project hdeawy/api-starter-kit .
- Update the
.env
file with your database credentials
DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=laravel_api
DB_USERNAME=root
DB_PASSWORD=password
- 🔥 Start the Docker containers
sail up -d
- Finally, run the migrations and generate the JWT secret
sail artisan migrate
sail artisan jwt:secret
Manually
- Clone the repository
git clone [email protected]:hdeawy/api-starter-kit.git
cd api-starter-kit
- Install dependencies
composer install
- Copy the
.env.example
file to.env
and set your environment variables
cp .env.example .env
- Final setup
php artisan key:generate
php artisan jwt:secret
php artisan migrate
Testing
Run the tests with Pest:
php artisan test
Laravel Pint
Code style fixer for minimalists
composer pint
Larastan
Finding errors in your code:
composer stan
Empower your API development journey with the Laravel API Starter Kit—a modern, efficient, and scalable foundation tailored for today’s web applications.