This repository is a prepared template which can be used to create an API. It contains all the necessary a pre-configured packages needed to concentrate yourself on the essential of the API.
- Auto generated documentation with Scribe
- Development docker-compose
- JWT token system
- GitHub Action PHPInsights and PHPUnit workflows
- Repository pattern
- Artisan command to generate repository (artisan make:repository ModelName)
- Dynamic settings system
- ACL system based on permissions and roles
- Artisan command to generate an API endpoint model based on entity
- Production docker compose stack
- mpociot/laravel-apidoc-generator - Auto-generated documentation
- tymon/jwt-auth - JWT token handler
- kotus/laravel-settings - laravel-settings
docker-compose up -d --build # Build and up the stack
docker-compose run --rm composer update # Execute a composer
docker-compose run --rm npm run dev # Execute an npm command
docker-compose run --rm artisan migrate # Execute artisan command
docker-compose run --rm artisan apidoc:generate # Generate the API documentation
docker-compose run --rm artisan make:repository User # Generate the user repository
- https://laravel.com/docs/8.x/authorization#policy-methods
- https://github.com/aschmelyun/docker-compose-laravel
- https://medium.com/@ripoche.b/cr%C3%A9er-une-spa-avec-authentification-par-r%C3%B4les-avec-laravel-et-vue-js-e69782ac6896
- https://stackoverflow.com/questions/46103215/laravel-permissions-and-roles-with-gate-can
- https://code.tutsplus.com/tutorials/gates-and-policies-in-laravel--cms-29780
- https://docs.spatie.be/laravel-permission/v3/introduction/
The Laravel framework is open-sourced software licensed under the MIT license.