fyre / framework
FyrePHP framework for MVC web apps with PSR-compliant HTTP, routing, ORM, cache, queue, and CLI tooling.
Requires
- php: >=8.5
- ext-intl: *
- ext-mbstring: *
- psr/container: ^2.0
- psr/event-dispatcher: ^1.0
- psr/http-client: ^1.0
- psr/http-message: ^2.0
- psr/http-server-handler: ^1.0
- psr/http-server-middleware: ^1.0
- psr/log: ^3.0
- psr/simple-cache: ^3.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.91
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^12
Suggests
- ext-curl: Required to use client requests.
- ext-memcached: Required to use Memcached cache handler.
- ext-openssl: Required to use OpenSSL encryption handler.
- ext-pcntl: Required to use queue workers and async promises
- ext-pdo: Required to use database connections.
- ext-redis: Required to use Redis cache and queue handlers.
Provides
- psr/container-implementation: ^2.0
- psr/event-dispatcher-implementation: ^1.0
- psr/http-client-implementation: ^1.0
- psr/http-message-implementation: ^2.0
- psr/http-server-handler-implementation: ^1.0
- psr/http-server-middleware-implementation: ^1.0
- psr/log-implementation: ^3.0
- psr/simple-cache-implementation: ^3.0
This package is auto-updated.
Last update: 2026-08-02 08:50:03 UTC
README
Use FyreFramework to build HTTP applications and CLI tools with routing, ORM, views, caching, queues, and other focused components.
Install the fyre/framework package and use individual subsystems as needed, or extend Engine when you want the framework's common application services available by default.
Table of Contents
- Start here
- Requirements
- Installation
- Application bootstrap
- Documentation
- Repository development
- License
Start here
- Install the framework package: follow Installation.
- Build around the default application services: see Application bootstrap.
- Use a specific subsystem: browse the documentation.
Requirements
- PHP >= 8.5
- Required PHP extensions:
ext-intl,ext-mbstring - For database connections:
ext-pdoplus the matching PDO driver such asext-pdo_mysql,ext-pdo_pgsql, orext-pdo_sqlite
Optional (depending on the parts you use):
ext-curl(HTTP client requests)ext-memcached(Memcached cache)ext-openssl(OpenSSL encryption handler)ext-pcntl(queue workers and async promises)ext-redis(Redis cache and queue handlers)
Fyre has no third-party runtime dependencies beyond PSR interfaces (psr/*).
Installation
Install the package with Composer:
composer require fyre/framework
Application bootstrap
A common bootstrap extends Fyre\Core\Engine, customizes the middleware queue, and shares the application instance with the framework helpers.
use Fyre\Core\Engine; use Fyre\Core\Loader; use Fyre\Http\MiddlewareQueue; $composer = require 'vendor/autoload.php'; final class Application extends Engine { public function middleware(MiddlewareQueue $queue): MiddlewareQueue { return $queue ->add('error') ->add('router') ->add('bindings'); } } $loader = new Loader() ->addClassMap($composer->getClassMap()) ->addNamespaces($composer->getPrefixesPsr4()) ->register(); $app = new Application($loader); Application::setInstance($app);
Your application repository defines its entry points, routes, configuration paths, and project layout around this package.
Continue with Engine, HTTP Middleware, and Routing.
Documentation
Start with the documentation index, or jump to the area you need:
- Core services: Core -> Engine -> Container
- HTTP applications: HTTP -> Routing
- Data and persistence: Database -> ORM
- Auth and security: Auth, Security
- Shared services: Events, Logging, Mail, Cache, Queue
- Rendering and forms: View, Form
- Tooling and tests: Console, Testing, Utilities
Repository development
Install the repository's dev dependencies and run the baseline checks:
composer validate --strict composer install composer audit --no-interaction composer cs composer phpstan composer phpstan-tests composer test:core
Additional local suites cover SQLite and external runtime integrations:
composer test:sqlite composer test:external
The SQLite suite requires ext-pdo and ext-pdo_sqlite. The external suite requires ext-curl and a google-chrome executable for PDF rendering.
Service-backed suites are available for dependencies defined in docker-compose.yml:
docker compose up -d mysql composer test:mysql
Available service-backed suites include mariadb, mysql, postgres, redis, memcached, and smtp.
License
FyreFramework is released under the MIT License.