GestorSystem é um framework PHP moderno, desenvolvido com foco em robustez, organização e escalabilidade. Ele oferece uma base sólida para a criação de sistemas web utilizando os princípios da Programação Orientada a Objetos (POO) e uma arquitetura limpa e padronizada.
- Estrutura modular seguindo o padrão MVC (Model-View-Controller).
- Autoload inteligente com PSR-4.
- Separação clara entre lógica de negócio, exibição e controle.
- Organização moderna de arquivos e pastas.
- Suporte a múltiplas empresas (multi-tenant).
- Pronto para expansão com novas funcionalidades.
- Script de migração CLI inteligente incluso.
| Categoria | Implementação |
|---|---|
| Arquitetura | MVC (Model-View-Controller) |
| Autoload | PSR-4 |
| Conexão com Banco | PDO com boas práticas de segurança |
| Programação | PHP 8+, Orientada a Objetos (OOP) |
| Estrutura | Modular e escalável |
| Design de Projeto | Separação de responsabilidades |
| Versionamento | Git + GitHub |
Este projeto contou com suporte inteligente da IA Gemini, que auxiliou no desenvolvimento estrutural e organizacional do framework, otimizando tempo e aplicando boas práticas do ecossistema PHP moderno.
GestorSystem/
├── app/
│ ├── Controllers/
│ ├── Models/
│ ├── Views/
│ └── Core/
├── config/
├── database/
│ ├── migrate.php
│ └── migrations/
├── public/
│ └── index.php
├── routes.php
├── storage/
├── composer.json
├── .env
└── README.md
git clone https://github.com/Natanaelpvh/GestorSystem.git
cd GestorSystem
composer installUtilize o script database/migrate.php para automatizar tarefas comuns com Models, Controllers e Migrations:
php database/migrate.php make:NomeDaEntidadeCria automaticamente:
app/Models/NomeDaEntidade.phpapp/Controllers/NomeDaEntidadeController.phpdatabase/migrations/aaaa_mm_dd_create_nome_da_entidade_table.php
php database/migrate.php update:NomeDaEntidadeRemove a migration anterior e gera uma nova atualizada para o model.
php database/migrate.phpExecuta todas as migrations disponíveis (chama o método up()).
php database/migrate.php rollbackReverte todas as migrations aplicadas (chama o método down()).
Todas as migrations seguem o padrão
CreateNometabelaTablee utilizam a classeDatabasedo núcleo.
O arquivo de rotas do sistema está localizado em:
routes.phpDentro dele, você pode importar arquivos como routes/web.php para organizar melhor suas rotas. Exemplo:
require_once __DIR__ . '/routes/web.php';No routes/web.php, defina suas rotas utilizando uma estrutura simples e direta:
use App\Core\Router;
Router::get('/empresas', 'EmpresaController@index');
Router::post('/empresas', 'EmpresaController@store');Essa estrutura envia as requisições HTTP para os métodos correspondentes nos controllers, com base na rota e no verbo HTTP (GET, POST, etc).
O sistema utiliza uma classe
Routerpersonalizada que interpreta as rotas definidas e despacha para o controller correto com base na URL.
Caso tenha sugestões, dúvidas ou deseje colaborar, sinta-se à vontade para entrar em contato:
📧 Email: [email protected]
🔗 GitHub: @Natanaelpvh