https://github.com/r4mpo/perfect-laravel-base
Base Laravel SOLID: Uma estrutura Laravel organizada e escalável, seguindo os princípios de SOLID, com foco em desacoplamento e manutenção de longo prazo. Conta com autenticação JWT, DTOs, Services, Repositories, validações e testes unitários. Ideal para projetos Laravel que exigem alta qualidade e fácil expansão.
https://github.com/r4mpo/perfect-laravel-base
arquitetura jwt laravel-framework php solid swagger
Last synced: about 1 month ago
JSON representation
Base Laravel SOLID: Uma estrutura Laravel organizada e escalável, seguindo os princípios de SOLID, com foco em desacoplamento e manutenção de longo prazo. Conta com autenticação JWT, DTOs, Services, Repositories, validações e testes unitários. Ideal para projetos Laravel que exigem alta qualidade e fácil expansão.
- Host: GitHub
- URL: https://github.com/r4mpo/perfect-laravel-base
- Owner: r4mpo
- Created: 2025-03-04T18:22:23.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-24T00:30:44.000Z (about 1 year ago)
- Last Synced: 2025-10-08T02:53:30.268Z (9 months ago)
- Topics: arquitetura, jwt, laravel-framework, php, solid, swagger
- Language: PHP
- Homepage: https://www.linkedin.com/posts/erick-agostinho-684563227_laravel-solidprinciples-desenvolvimentoweb-activity-7302794239950614528-Xcdw?utm_source=share&utm_medium=member_desktop&rcm=ACoAADjbagQB5XcjzfRhHS7oGvk8izVnjs9QNjc
- Size: 168 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
Erick Agostinho (@r4mpo) - 2025
---
# **Base Laravel - Arquitetura SOLID**
Este repositório serve como uma **base de projeto Laravel** otimizada, que adota as melhores práticas de **arquitetura** e **desenvolvimento sustentável** , com ênfase nos princípios do **SOLID** , buscando garantir **escabilidade** , **desacoplamento** e **manutenibilidade** de longo prazo. Ele oferece uma estrutura robusta e testada, ideal para ser usada como ponto de partida em projetos Laravel que exijam alto nível de organização e extensibilidade.
## **🔍 Visão Geral da Estrutura**
O projeto é estruturado de forma a seguir padrões de arquitetura que permitem fácil integração de novos recursos e funcionalidades sem impactar negativamente o código existente. Sua arquitetura pode ser representada com os seguintes componentes principais:
### **📦 Componentes Arquiteturais:**
* **DTO (Data Transfer Objects):** Utilizado para garantir a transferência de dados de forma organizada e consistente.
* **Helpers:** Funções reutilizáveis que auxiliam no desempenho e organização do código.
* **Controllers:** Responsáveis por orquestrar as requisições e interagir com os **Services** e **Repositories**.
* **Requests:** Validação e sanitização dos dados de entrada da API, garantindo segurança e integridade.
* **Middlewares:** Responsáveis por aplicar regras de acesso, autenticação e autorização, entre outros filtros de segurança.
* **Models:** Representação das entidades no banco de dados, com métodos que ajudam na manipulação desses dados.
* **Queries:** Permite a execução de consultas SQL personalizadas e otimizadas.
* **Repositories:** Implementação do padrão de repositório, facilitando o acesso a dados, centralizando a lógica de consulta e permitindo fácil manutenção.
* **Services:** Contém a lógica de negócios, desacoplando a implementação das **Controllers**.
* **Value Objects:** Representação de objetos imutáveis, como tipos de dados ricos que devem ser usados de forma controlada e segura.
* **Interfaces:** Conjunto de padrões envolvendo parâmetros e retornos esperados em funções específicas.
### **📖 Documentação**
A documentação da API está disponível e acessível através do Swagger, que proporciona uma interface interativa para testar os endpoints da aplicação.
* **Acesse a documentação** : [http://localhost:8000/api/documentation](http://localhost:8000/api/documentation)
### **✅ Testes e Cobertura**
O projeto também possui uma cobertura de testes unitários, garantindo a funcionalidade das operações principais e proporcionando segurança contra quebras no código, principalmente em operações de inserção no banco de dados.
---
## **🚀 Recursos e Benefícios:**
* **🔒 Segurança:** Middleware de autenticação e validações de segurança de ponta.
* **⚡ Performance:** Design otimizado para alta performance, com uso de cache e queries eficientes.
* **🔄 Escalabilidade:** A arquitetura projetada para fácil expansão e adição de novas funcionalidades.
* **✅ Testabilidade:** Testes unitários completos para garantir a qualidade do código.
* **📚 Documentação Interativa:** Swagger para documentação dinâmica e fácil de utilizar.
## **⚙️ Tecnologias Utilizadas:**
* **PHP 8.2.12**
* **Laravel 12.0.1**
* **JWT Auth (para autenticação)**
* **Swagger (para documentação da API)**
* **MySQL (banco de dados)**
---
Este repositório é a escolha ideal para equipes que buscam manter o código bem estruturado e fácil de escalar à medida que o projeto cresce. Ao seguir os princípios de **SOLID** , garantimos um código limpo, legível e adaptável.