cafernandes/express-php

Express PHP - A lightweight, fast, and secure microframework inspired by Express.js for building modern PHP web applications and APIs

v2.1.2 2025-07-02 18:58 UTC

This package is auto-updated.

Last update: 2025-07-02 19:00:37 UTC


README

License: MIT PHP Version PHPStan Level PSR-12 GitHub Issues GitHub Stars

🚀 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:

🤝 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