fyre/framework

FyrePHP framework for MVC web apps with PSR-compliant HTTP, routing, ORM, cache, queue, and CLI tooling.

Maintainers

Package info

github.com/elusivecodes/FyreFramework

pkg:composer/fyre/framework

Transparency log

Statistics

Installs: 0

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

dev-main 2026-08-02 08:18 UTC

This package is auto-updated.

Last update: 2026-08-02 08:50:03 UTC


README

CI Codecov Packagist Version Packagist Downloads GitHub License

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

  • PHP >= 8.5
  • Required PHP extensions: ext-intl, ext-mbstring
  • For database connections: ext-pdo plus the matching PDO driver such as ext-pdo_mysql, ext-pdo_pgsql, or ext-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:

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.