gustavosantarosa / controller-basics-extension
Controller Basics Extension
Package info
github.com/Quantum-Tecnology/Controller-Basics-Extension
pkg:composer/gustavosantarosa/controller-basics-extension
Requires
- php: ^8.2
- quantumtecnology/handler-basics-extension: ^2.2.0
- quantumtecnology/service-basics-extension: ^3.0.7
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.70
- laravel/pint: ^1.13
- orchestra/testbench: ^10.4
- pestphp/pest: ^3.8
- pestphp/pest-plugin-faker: ^3.0
- pestphp/pest-plugin-laravel: ^3.2
- pestphp/pest-plugin-watch: ^3.0
- rector/rector: ^2.1
Suggests
- vinkla/hashids: Required for HashID cryptography middleware (^14.0 | ^13.0 | ^12.0)
This package is auto-updated.
Last update: 2026-05-29 21:26:16 UTC
README
Controller-Basics-Extension for Laravel
🧐 Sobre
Este pacote inclui uma classe de extensão desacoplada que contem os principais metodos para um crud dentro de controller:
- index;
- show;
- store;
- update;
- destroy;
Sempre que possivel ele sera atualizado, e esta aberto para a comunidade sugerir melhorias.
🏁 Para utilizar o pack
Para utilizar a classe, basta instalar ela utilizando o comando do composer:
composer require quantumtecnology/controller-basics-extension
extender ela na sua classe de controller dentro de app/controllers e com isso, o seu crud ja vai estar finalizado e pronto para uso.
Pronto, ja é para estar funcionando.
🎈 Recursos
Nele existem algumas ferramentas uteis.
- BaseController:
- Um index que lista todo o conteudo dentro da model inforada.
- Um show que apresenta o id informado e caso de falha, apresenta uma exception que pode ser customizada.
- Utilizando o pacote Validate-Trait o store captura os parametros validados e persiste no banco de dados.
- Utilizando o pacote Validate-Trait o update captura os parametros validados e atualiza no banco de dados.
- E um destroy que remove do banco de dados.
🧐 Outras Bibliotecas
- Enum-Basics-Extension - Utilizado para auxiliar nas Classes de Enums;
- SetSchema-Trait - Suprir a necessidade de setar os schemas automaticamente do PostgreSQL;
- Validate-Trait - Bindar os Requests automaticamente de acordo com o caminho do Controller Pattern;
- PerPage-Trait - Padronizar a quantidade do paginate na api inteira e definir uma quantidade máxima;
- Handler-Basics-Extension - Contem tratamento das principais exceções do laravel, e contem varios responses para lhe auxiliar;
📚 Documentação GraphQL-like
- GraphQL-like via REST (README.graphql.md) — Guia baseado nos testes, mostrando fields, filters e paginação por relação.
⛏️ Ferramentas
✍️ Autor
- @Luis Gustavo Santarosa Pinto - Idea & Initial work