celemas / core
Celemas core web framework
0.2.0
2026-02-21 18:43 UTC
Requires
- php: ^8.5
- duon/cli: ^0.1
- duon/container: ^0.2
- duon/router: ^0.1
- laminas/laminas-httphandlerrunner: ^2.4
- psr/http-factory: ^1.0
- psr/http-message-implementation: ^1.0
Requires (Dev)
- duon/dev: ^2.5
- guzzlehttp/psr7: ^2
- laminas/laminas-diactoros: ^2 || ^3
- nyholm/psr7: ^1.5
- nyholm/psr7-server: ^1
README
Celemas Core is a lightweight and easily extendable >=PHP 8.3 web framework.
[!WARNING] This library is under active development, some of its features are still experimental and subject to change. Large parts of the documentation are missing.
It features:
- Http Routing.
- An autowiring container used for automatic dependency injection.
- Middleware.
- Convenience wrappers for PSR request, response and middleware.
- Logging.
Routing
App exposes the router's common route helpers and runs requests through the router RoutingHandler internally.
use Celemas\Core\App; use Celemas\Router\Group; $app = App::create(); $app->get('/health', [HealthController::class, 'show'], 'health'); $app->map(['GET', 'POST'], '/login', [AuthController::class, 'login'], 'login'); $app->any('/webhook', $webhook, 'webhook'); $app->group('/admin', function (Group $admin) use ($auth): void { $admin->middleware($auth); $admin->controller(AdminController::class); $admin->get('', 'index', 'admin.index'); $admin->post('/login', 'login', 'admin.login'); });
Supported PSRs:
- PSR-3 Logger Interface
- PSR-4 Autoloading
- PSR-7 Http Messages (Request, Response, Stream, and so on.)
- PSR-11 Container Interface
- PSR-12 Extended Coding Style
- PSR-15 Http Middleware
- PSR-17 Http Factories
License
This project is licensed under the MIT license.