PHPackages                             ideationnet/router-middleware - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [HTTP &amp; Networking](/categories/http)
4. /
5. ideationnet/router-middleware

Abandoned → [ideationnet/invoker-router-middleware](/?search=ideationnet%2Finvoker-router-middleware)Library[HTTP &amp; Networking](/categories/http)

ideationnet/router-middleware
=============================

PSR-15 compatible invoker router middleware

04PHP

Since Nov 29Pushed 9y ago1 watchersCompare

[ Source](https://github.com/ideationnet/router-middleware)[ Packagist](https://packagist.org/packages/ideationnet/router-middleware)[ RSS](/packages/ideationnet-router-middleware/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Router Middleware
=================

[](#router-middleware)

A simple PSR-15 compatible router middleware, based on [Fast Route](https://github.com/nikic/FastRoute).

Install
-------

[](#install)

Via Composer

```
$ composer require ideationnet/router-middleware
```

Usage
-----

[](#usage)

Use with your favourite PSR-15 middleware dispatcher, like [Stack Runner](https://github.com/ideationnet/stack-runner). Inject an instance of `FastRoute\Dispatcher`. Two different dispatchers? Is that confusing enough? One of them processes the stack of middleware, the other (probably at the bottom of this stack) will route to the correct controller. See [Wafer](https://github.com/ideationnet/wafer) for an example of this used with PHP-DI...

```
return [

    'routes' => [],

    Dispatcher::class => function (ContainerInterface $c) {
        return simpleDispatcher(function (RouteCollector $r) use ($c) {
            array_map(function ($route) use ($r) {
                call_user_func_array([$r, 'addRoute'], $route);
            }, $c->get('routes'));
        });
    },

];
```

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Darren Mothersele](http://www.darrenmothersele.com)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License. Please see [License File](License.md) for more information.

###  Health Score

19

—

LowBetter than 10% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/7f0ce40e51bf1fb3ba86b4a566dbbb0a26e8792e1b9418228324e26e7450f42b?d=identicon)[darrenmothersele](/maintainers/darrenmothersele)

---

Top Contributors

[![darrenmothersele](https://avatars.githubusercontent.com/u/230337?v=4)](https://github.com/darrenmothersele "darrenmothersele (5 commits)")

### Embed Badge

![Health badge](/badges/ideationnet-router-middleware/health.svg)

```
[![Health](https://phpackages.com/badges/ideationnet-router-middleware/health.svg)](https://phpackages.com/packages/ideationnet-router-middleware)
```

###  Alternatives

[friendsofsymfony/rest-bundle

This Bundle provides various tools to rapidly develop RESTful API's with Symfony

2.8k73.3M319](/packages/friendsofsymfony-rest-bundle)[php-http/discovery

Finds and installs PSR-7, PSR-17, PSR-18 and HTTPlug implementations

1.3k309.5M1.2k](/packages/php-http-discovery)[nyholm/psr7

A fast PHP7 implementation of PSR-7

1.3k235.4M2.4k](/packages/nyholm-psr7)[pusher/pusher-php-server

Library for interacting with the Pusher REST API

1.5k94.8M293](/packages/pusher-pusher-php-server)[spatie/crawler

Crawl all internal links found on a website

2.8k16.3M52](/packages/spatie-crawler)[react/http

Event-driven, streaming HTTP client and server implementation for ReactPHP

78126.4M414](/packages/react-http)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
