middlewares / Awesome Psr15 Middlewares
A curated list of awesome PSR-15 HTTP Middleware resources
Stars: ✭ 271
Projects that are alternatives of or similar to Awesome Psr15 Middlewares
Laravel Demo Mode
A package to protect your work in progress from prying eyes
Stars: ✭ 259 (-4.43%)
Mutual labels: middleware
ngx-security-starter
A full implementation of the heloufir/security-starter with an Angular 7+ front-end implementation, with a laravel 5.8.* server
Stars: ✭ 37 (-86.35%)
Mutual labels: middleware
wam.js
wam is a koa and next.js inspired middleware framework for node
Stars: ✭ 14 (-94.83%)
Mutual labels: middleware
express-view-cache
Unobtrusive solution to express framework - cache rendered page, without database requests and rendering.
Stars: ✭ 20 (-92.62%)
Mutual labels: middleware
Frontexpress
An Express.js-Style router for the front-end
Stars: ✭ 263 (-2.95%)
Mutual labels: middleware
redux-simple-auth
A library for implementing authentication and authorization for redux applications
Stars: ✭ 20 (-92.62%)
Mutual labels: middleware
Zen
zen is a elegant and lightweight web framework for Go
Stars: ✭ 257 (-5.17%)
Mutual labels: middleware
laminas-mvc-middleware
Dispatch middleware pipelines in place of controllers in laminas-mvc.
Stars: ✭ 18 (-93.36%)
Mutual labels: middleware
phalcon-authmiddleware
Auth Middleware component for Phalcon.
Stars: ✭ 27 (-90.04%)
Mutual labels: middleware
koii
A simple middleware for displaying routes in an express application
Stars: ✭ 73 (-73.06%)
Mutual labels: middleware
Pdfkit
A Ruby gem to transform HTML + CSS into PDFs using the command-line utility wkhtmltopdf
Stars: ✭ 2,799 (+932.84%)
Mutual labels: middleware
Guardian
Service Side Swift:Vapor 3 based API Guardian Middleware. 🦁
Stars: ✭ 90 (-66.79%)
Mutual labels: middleware
faaskit
A lightweight middleware framework for functions as a service
Stars: ✭ 24 (-91.14%)
Mutual labels: middleware
Cors
🔮Supported(Laravel/Lumen/PSR-15/Swoft/Slim/ThinkPHP) - PHP CORS (Cross-origin resource sharing) middleware.
Stars: ✭ 266 (-1.85%)
Mutual labels: middleware
Home
Project Glimpse: Node Edition - Spend less time debugging and more time developing.
Stars: ✭ 260 (-4.06%)
Mutual labels: middleware
stats
📊 Request statistics middleware that stores response times, status code counts, etc
Stars: ✭ 15 (-94.46%)
Mutual labels: middleware
Awesome PSR-15 Middlewares
PSR-15 HTTP Middleware describes a common standard for HTTP middleware components using HTTP Messages defined by PSR-7.
Currently, PSR-15 is a PHP Standards Recommendation of the Framework Interoperability Group (FIG).
Please read the contribution guidelines before contributing.
Contents
References
- PHP Framework Interoperability Group website
- PSR-15 HTTP Middleware - The current standard.
- psr/http-server-middleware - Composer package of common interfaces for PSR-15 HTTP Middlewares.
Articles
- PSR-7 Objects Are Not Immutable - Description of a serious flaw with the double-pass style of middlewares.
- Dependency Inversion and PSR-7 Bodies - Conclusion that double-pass flaws cannot be resolved without HTTP Factories.
Packages
PSR-7 implementations
- laminas/laminas-diactoros
- guzlehttp/psr7
- slim/http
- nyholm/psr7
- sunrise/http-message
- sunrise/http-server-request
- sunrise/stream
- sunrise/uri
- http_message (PHP extension)
- httpsoft/http-message
Dispatcher
- relay/relay - A PSR-15 request handler for both PSR-15 and callable middleware; use it with any framework or container.
- equip/dispatch - An HTTP Interop compatible middleware dispatcher.
- mindplay/middleman - Dead simple PSR-15 / PSR-7 middleware dispatcher.
- laminas/laminas-stratigility - Build and dispatch middleware pipelines.
- oscarotero/middleland - Another PSR-15 dispatcher
- moon-php/http-middleware - A simple PSR-15 dispatcher with lazy middleware resolution via container
- northwoods/broker - A conditional PSR-15 dispatcher that supports lazy middleware resolution via container
- noglitchyo/middleware-collection-request-handler - Lightweight & simple PSR-15 server request handler implementation to handle middleware collection.
- makise-co/middleware - A high performance strict typed PSR-15 dispatcher that supports middleware resolution though PSR container. Optimized for long-running applications (like Swoole, ReactPHP, AmPHP).
- httpsoft/http-runner - Running PSR-7 components and building PSR-15 middleware pipelines.
Router
- middlewares/aura-router - Use Aura.Router.
- middlewares/fast-route - Use FastRoute.
- timtegeler/routerunner - Routerunner is a config-driven router for HTTP requests.
- delolmo/symfony-router - Use symfony/routing
- sunrise/http-router - HTTP Router based on PSR-7 and PSR-15
- jasny/switch-route - Generate a PHP script for faster routing
- makise-co/http-router - A HTTP Router based on FastRoute with middleware and DI support. Optimized for long-running applications.
- httpsoft/http-router - Simple and fast HTTP request router providing PSR-7 and PSR-15.
Security
- middlewares/cors - Manage Cross-Origin Resource Sharing (CORS).
- middlewares/csp - Manage Content-Security-Policies (CSP).
- middlewares/honeypot - Block spam bots.
- middlewares/http-authentication - HTTP Basic and Digest access authentication.
- middlewares/recaptcha - Use Google's reCAPTCHA for spam prevention.
Development
- middlewares/debugbar - Inject PHP Debug Bar.
- middlewares/whoops - Use Whoops as error handler.
Manage States
- middlewares/aura-session - Manage sessions using Aura.Session.
Content
- middlewares/encoder - Compress responses with gzencode or gzdeflate.
- middlewares/minifier - Minify Html, CSS and Javascript.
- middlewares/negotiation - Manage content negotiations.
Miscellaneous
- middlewares/geolocation - Geolocate requests.
- noglitchyo/dealdoh - Handle DoH (DNS-over-HTTPS) messages.
License
To the extent possible under law, Michael Mayer has waived all copyright and related or neighboring rights to this work.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].