Expressive alternatives and similar libraries
Based on the "Middlewares" category
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of Expressive or a related project?
Develop PSR-7 middleware applications in minutes!
zend-expressive builds on zend-stratigility to provide a minimalist PSR-7 middleware framework for PHP, with the following features:
- Routing. Choose your own router; we support:
- DI Containers, via PSR-11 Container. Middleware matched via routing is retrieved from the composed container.
- Optionally, templating. We support:
Using the skeleton + installer
The simplest way to install and get started is using the skeleton project, which includes installer scripts for choosing a router, dependency injection container, and optionally a template renderer and/or error handler. The skeleton also provides configuration for officially supported dependencies.
To use the skeleton, use Composer's
$ composer create-project zendframework/zend-expressive-skeleton <project dir>
This will prompt you through choosing your dependencies, and then create and
install the project in the
<project dir> (omitting the
<project dir> will
create and install in a
Manual Composer installation
You can install Expressive standalone using Composer:
$ composer require zendframework/zend-expressive
However, at this point, Expressive is not usable, as you need to supply minimally:
- a router.
- a dependency injection container.
We currently support and provide the following routing integrations:
composer require zendframework/zend-expressive-aurarouter
composer require zendframework/zend-expressive-fastroute
composer require zendframework/zend-expressive-zendrouter
We recommend using a dependency injection container, and typehint against PSR-11 Container. We can recommend the following implementations:
composer require zendframework/zend-servicemanager
- Pimple (see [docs](docs/book/features/container/pimple.md) for more details):
composer require zendframework/zend-pimple-config
- Aura.Di (see [docs](docs/book/features/container/aura-di.md) for more details):
composer require zendframework/zend-auradi-config
Additionally, you may optionally want to install a template renderer implementation, and/or an error handling integration. These are covered in the documentation.
Documentation is [in the doc tree](docs/book/), and can be compiled using mkdocs:
$ mkdocs build
Additionally, public-facing, browseable documentation is available at https://docs.zendframework.com/zend-expressive/