cafernandes / express-php
Express PHP - A lightweight, fast, and secure microframework inspired by Express.js for building modern PHP web applications and APIs
Fund package maintenance!
CAFernandes
Requires
- php: >=8.1.0
- ext-json: *
- ext-session: *
- psr/container: ^2.0
- psr/event-dispatcher: ^1.0
- psr/http-factory: ^1.0
- psr/http-message: ^1.1|^2.0
- psr/http-server-handler: ^1.0
- psr/http-server-middleware: ^1.0
- psr/log: ^3.0
Requires (Dev)
- httpsoft/http-message: ^1.0
- laminas/laminas-diactoros: ^3.0
- nyholm/psr7: ^1.8
- phpstan/phpstan: ^1.0
- phpunit/phpunit: ^9.0|^10.0
- squizlabs/php_codesniffer: ^3.0
Suggests
- ext-apcu: For caching middleware and performance optimization
- ext-fileinfo: Required for file upload validation
- ext-mbstring: Required for proper string handling
- ext-openssl: Required for secure token generation
- firebase/php-jwt: Required for JWT authentication middleware
README
🚀 O que é o Express PHP?
Express PHP é um microframework moderno, leve e seguro, inspirado no Express.js, para construir APIs e aplicações web de alta performance em PHP. Foco em produtividade, arquitetura desacoplada e extensibilidade real.
- Alta Performance: +52M ops/sec em CORS, +24M ops/sec em Response, cache integrado e roteamento otimizado.
- Arquitetura Moderna: DI Container, Service Providers, Event System, Extension System e PSR-15.
- Segurança: Middlewares robustos para CSRF, XSS, Rate Limiting, JWT, API Key e mais.
- Extensível: Sistema de plugins, hooks, providers e integração PSR-14.
- Qualidade: 270+ testes, PHPStan Level 9, PSR-12, cobertura completa.
✨ Principais Recursos
- 🏗️ DI Container & Providers
- 🎪 Event System
- 🧩 Sistema de Extensões
- 🔧 Configuração flexível
- 🔐 Autenticação Multi-método
- 🛡️ Segurança Avançada
- 📡 Streaming & SSE
- 📚 OpenAPI/Swagger
- ⚡ Performance
- 🧪 Qualidade e Testes
💡 Casos de Uso & Insights
- APIs RESTful de alta performance
- Gateways de autenticação JWT/API Key
- Microsserviços e aplicações desacopladas
- Sistemas extensíveis com plugins e hooks
- Plataformas que exigem segurança e performance
Veja exemplos práticos em examples/
e benchmarks reais em benchmarks/
.
🚀 Início Rápido
Instalação
composer require cafernandes/express-php
Exemplo Básico
<?php require_once 'vendor/autoload.php'; use Express\Core\Application; use Express\Http\Psr15\Middleware\{SecurityMiddleware, CorsMiddleware, AuthMiddleware}; $app = new Application(); // Middlewares de segurança (PSR-15) $app->use(new SecurityMiddleware()); $app->use(new CorsMiddleware()); $app->use(new AuthMiddleware([ 'authMethods' => ['jwt'], 'jwtSecret' => 'sua_chave_secreta' ])); // API RESTful $app->get('/api/users', function($req, $res) { $res->json(['users' => $userService->getAll()]); }); $app->post('/api/users', function($req, $res) { $user = $userService->create($req->body); $res->status(201)->json(['user' => $user]); }); $app->run();
📚 Documentação Completa
Acesse o Índice da Documentação para navegar por todos os guias técnicos, exemplos, referências de API, middlewares, autenticação, performance e mais.
Principais links:
- Guia de Implementação Básica
- Guia com Middlewares Prontos
- Guia de Middleware Customizado
- Referência Técnica
- Performance e Benchmarks
🤝 Como Contribuir
Quer ajudar a evoluir o Express PHP? Veja o Guia de Contribuição ou acesse docs/contributing/
para saber como abrir issues, enviar PRs ou criar extensões.
📄 Licença
Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para detalhes.
Desenvolvido com ❤️ para a comunidade PHP