awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

25 dépôts

Awesome GitHub RepositoriesMiddleware

Reusable logic components that execute globally or on specific routes to extend application functionality.

Distinguishing note: General purpose middleware execution distinct from specific pipeline architectures.

Explore 25 awesome GitHub repositories matching web development · Middleware. Refine with filters or upvote what's useful.

Awesome Middleware GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • videojs/video.jsAvatar de videojs

    videojs/video.js

    39,805Voir sur GitHub↗

    Video.js is a customizable HTML5 video player framework and JavaScript media plugin system. It provides a foundation for rendering and controlling web video playback across different devices and screen sizes, supporting both standard HTML5 integration and adaptive bitrate streaming for live or on-demand content. The project is distinguished by a modular architecture that allows for the extension of playback functionality through a class-based plugin system and middleware-based method interception. This enables the development of tailored media interfaces and the integration of specialized beh

    Uses middleware to wrap and modify getters and setters for controlling property updates.

    JavaScriptdashhlshtml
    Voir sur GitHub↗39,805
  • koajs/koaAvatar de koajs

    koajs/koa

    35,713Voir sur GitHub↗

    Koa is a lightweight web framework for Node.js designed for building HTTP applications and servers. It functions as an asynchronous middleware engine that processes network requests through a sequence of functions sharing a common context. The framework distinguishes itself by using an onion-model middleware stack and promise-based flow control. This architecture allows requests to flow downstream and responses to flow back upstream through the same chain, enabling non-blocking request cycles and a modular approach to handling network traffic. The system provides high-level capabilities for

    Allows bundling multiple functions into reusable middleware groups to simplify application logic configuration.

    JavaScriptkoa
    Voir sur GitHub↗35,713
  • labstack/echoAvatar de labstack

    labstack/echo

    32,451Voir sur GitHub↗

    Echo is a high-performance, lightweight web framework for Go designed for building scalable RESTful APIs and web services. It provides a centralized environment for mapping network requests to handler functions, utilizing a fast radix-tree routing engine to ensure efficient request dispatching. The framework is built around a modular, middleware-centric pipeline that allows developers to execute reusable logic for cross-cutting concerns like authentication, logging, and security across the entire application. What distinguishes Echo is its focus on developer productivity through structured da

    Executes reusable logic globally or on specific routes to extend application functionality.

    Goechogohttp2
    Voir sur GitHub↗32,451
  • yelouafi/redux-sagaAvatar de yelouafi

    yelouafi/redux-saga

    22,443Voir sur GitHub↗

    Redux-Saga is a middleware library for Redux applications that manages asynchronous data flows and complex side effects. It serves as a decoupled state management effect layer and workflow orchestrator, utilizing JavaScript generator functions to pause and resume asynchronous operations without blocking the application. The library distinguishes itself by using generators to manage sequential or parallel tasks and state transitions outside of the main user interface thread. This approach allows for the coordination of complex asynchronous workflows, such as multi-step data fetching and API ca

    Utilizes a system where generators yield descriptive effect objects that are executed by a central coordinator to ensure testability.

    JavaScript
    Voir sur GitHub↗22,443
  • redux-saga/redux-sagaAvatar de redux-saga

    redux-saga/redux-saga

    22,443Voir sur GitHub↗

    Redux-Saga is a middleware for managing complex asynchronous flows and side effects in Redux applications. It functions as an asynchronous state orchestrator and side effect manager that uses JavaScript generator functions to coordinate concurrent tasks and long-running background processes tied to a global state store. The system utilizes a generator-based effect middleware to handle external I/O and API requests outside of the main application logic. It provides a mechanism to start, pause, and cancel multiple asynchronous operations, allowing the application to prevent race conditions and

    Intersects Redux actions to dispatch effect objects that are executed by the middleware and fed back into generators.

    JavaScript
    Voir sur GitHub↗22,443
  • gorilla/muxAvatar de gorilla

    gorilla/mux

    21,832Voir sur GitHub↗

    This project is a request router and web framework for the Go programming language. It provides a toolkit for matching incoming HTTP network requests to specific handler functions by evaluating criteria such as URL paths, request methods, headers, and hostnames. The framework distinguishes itself through its flexible matching capabilities, which include support for regular expressions and dynamic variable extraction from URL segments. It allows developers to organize routes into logical hierarchies, share common path prefixes, and maintain a central registry of named routes to facilitate prog

    Wraps web requests with reusable logic like logging, compression, or security headers.

    Gogogolanggorilla
    Voir sur GitHub↗21,832
  • sanic-org/sanicAvatar de sanic-org

    sanic-org/sanic

    18,624Voir sur GitHub↗

    Sanic is an asynchronous Python web framework designed for building high-performance APIs and services. It operates as a production-ready ASGI web server, utilizing a non-blocking event loop to handle concurrent requests and maximize throughput. The framework is built to support scalable architectures, offering built-in worker process management to distribute traffic across available CPU cores. What distinguishes Sanic is its focus on modularity and developer-centric tooling. It features a blueprint-based system for organizing complex applications into pluggable components, alongside a robust

    Allows wrapping endpoints with middleware logic to enforce cross-cutting concerns like authentication or logging.

    Pythonapi-serverasgiasyncio
    Voir sur GitHub↗18,624
  • geektutu/7days-golangAvatar de geektutu

    geektutu/7days-golang

    16,812Voir sur GitHub↗

    This project is an educational framework designed to teach the fundamentals of building core distributed systems and web services from scratch in Go. It provides a collection of modular implementations that demonstrate how to construct essential infrastructure components, including web servers, remote procedure call systems, distributed caches, and database abstraction layers. The framework distinguishes itself by focusing on the internal mechanics of these systems rather than providing a high-level abstraction for production use. It covers the implementation of complex architectural patterns

    Provides modular middleware components for intercepting and processing network requests within the framework.

    Gogolanglearningscratch
    Voir sur GitHub↗16,812
  • sinatra/sinatraAvatar de sinatra

    sinatra/sinatra

    12,441Voir sur GitHub↗

    Sinatra is a lightweight web framework for the Ruby programming language designed for building web applications and services. It provides a domain-specific language that maps HTTP verbs and URL patterns directly to executable code blocks, allowing developers to define routes and handle incoming network requests with minimal boilerplate. The framework distinguishes itself through a modular architecture that relies on a middleware pipeline to process, modify, or terminate connections. This design allows for the integration of external functionality by mixing modules into the core request-handli

    Extends core functionality by plugging in reusable components to handle tasks like logging or authentication.

    Rubyrackrubysinatra
    Voir sur GitHub↗12,441
  • the-benchmarker/web-frameworksAvatar de the-benchmarker

    the-benchmarker/web-frameworks

    7,087Voir sur GitHub↗

    This project is a web framework performance benchmark suite and automated benchmarking orchestrator. It serves as a multi-language performance analysis tool designed to measure execution speed, throughput, and latency across various HTTP libraries and programming ecosystems. The system functions as an HTTP framework comparison tool that evaluates relative efficiency using consistent hardware and request patterns. It automates the build, deployment, and execution cycles necessary to collect stable performance data and compute metrics such as error rates and latency percentiles. The suite eval

    Allows registration of middleware that runs globally across all routes to handle cross-cutting concerns.

    PHPbenchmarkframeworkhttp
    Voir sur GitHub↗7,087
  • wakujs/wakuAvatar de wakujs

    wakujs/waku

    6,330Voir sur GitHub↗

    Waku is a minimal React framework built around React Server Components. It renders components exclusively on the server for data fetching and server-side logic, then hydrates client components in the browser for interactivity. The framework supports hybrid rendering, mixing static prerendering at build time with dynamic per-request rendering within a single application, and allows independently loading slice components that can be static or dynamic. The framework distinguishes itself through its file-based routing system that defines pages, layouts, and API endpoints by placing files in a dir

    Registers middleware functions that run on every request for cross-cutting concerns like logging.

    TypeScript
    Voir sur GitHub↗6,330
  • timber/timberAvatar de timber

    timber/timber

    5,650Voir sur GitHub↗

    Timber is a PHP library that integrates the Twig template engine into WordPress themes, providing an object-oriented framework for theme development. It wraps WordPress data — posts, terms, users, menus, and comments — in structured PHP classes, allowing developers to work with objects instead of raw arrays while keeping HTML markup separate from PHP logic through Twig templates. The library distinguishes itself by offering a complete set of tools for modern WordPress theme building. It includes a file-based template hierarchy with fallback chains, dynamic image manipulation with resizing, cr

    Adds menus to the global template context so they are available on every page without repeated initialization.

    PHPhactoberfestphptimber
    Voir sur GitHub↗5,650
  • lukeed/polkaAvatar de lukeed

    lukeed/polka

    5,585Voir sur GitHub↗

    Polka est un framework web Node.js minimaliste et un moteur de routage HTTP. Il fournit une implémentation de serveur à faible empreinte conçue pour une surcharge minimale, mappant les chemins d'URL et les méthodes HTTP à des fonctions de gestion spécifiques. Le projet utilise une architecture basée sur des middlewares, traitant les requêtes à travers une séquence de fonctions pour gérer des tâches telles que la journalisation, l'autorisation et la modification de données. Il permet l'organisation de ces fonctions en groupes globaux et filtrés par chemin pour contrôler l'ordre d'exécution. Le framework couvre les capacités web essentielles, notamment l'extraction de paramètres de route, l'analyse d'URL de requête avec mémoïsation et la gestion des réponses 404. Il inclut également un système centralisé de gestion des erreurs pour intercepter les exceptions levées dans la chaîne de middleware. Les utilisateurs peuvent démarrer un nouveau serveur HTTP sur un port spécifique ou attacher le gestionnaire de requête à une instance de serveur existante.

    Restrict specific middleware functions to execute only when a request matches a defined base pathname.

    JavaScript
    Voir sur GitHub↗5,585
  • domaindrivendev/swashbuckle.aspnetcoreAvatar de domaindrivendev

    domaindrivendev/Swashbuckle.AspNetCore

    5,492Voir sur GitHub↗

    Swashbuckle.AspNetCore est un outil de spécification d'API et un générateur de documentation pour ASP.NET Core. Il extrait les métadonnées du code source et des modèles pour produire des spécifications OpenAPI standardisées et des interfaces de navigateur interactives pour explorer et tester les API web. Le projet intègre un composant middleware pour servir ces spécifications et une interface Swagger UI pour le test d'API interactif directement depuis une application en cours d'exécution. Il fournit également un exportateur en ligne de commande pour extraire les fichiers de spécification des assemblages d'application pour une utilisation dans les pipelines CI/CD. L'outil couvre un large éventail de capacités incluant la gestion de schéma pour les types complexes, l'annotation de métadonnées via des attributs et des commentaires XML, et la configuration de sécurité pour OAuth 2.0 et les clés API. Il prend en outre en charge la gestion de contrat d'API, le versionnage de spécification et des pipelines de génération personnalisables pour filtrer ou modifier les opérations.

    Integrates as middleware to serve API specifications and interactive user interfaces directly from the running application.

    C#
    Voir sur GitHub↗5,492
  • maiot-io/zenmlAvatar de maiot-io

    maiot-io/zenml

    5,452Voir sur GitHub↗

    ZenML is an extensible machine learning orchestration framework designed to manage the end-to-end lifecycle of data pipelines and AI agent workflows. It functions as a durable orchestrator that executes machine learning tasks as directed acyclic graphs, ensuring that every step is containerized for consistent performance across local, cloud, and hybrid infrastructure. By decoupling pipeline code from underlying compute and storage backends, the platform allows developers to define infrastructure-agnostic stacks that remain portable across diverse environments. The project distinguishes itself

    Enforces cross-cutting security and logging concerns across all pipeline endpoints using custom ASGI middleware.

    Python
    Voir sur GitHub↗5,452
  • h3js/h3Avatar de h3js

    h3js/h3

    5,353Voir sur GitHub↗

    Hono est un framework HTTP JavaScript minimal conçu pour construire des serveurs web à travers de multiples runtimes, incluant Node.js, les runtimes edge et les plateformes serverless. Il fonctionne comme un serveur web cross-runtime et un wrapper d'API web standard, normalisant divers objets de requête et réponse en signatures Web API standards. Le projet sert d'orchestrateur de middleware HTTP et de gestionnaire de requêtes, utilisant un pipeline de requêtes basé sur des middlewares et un montage de routes hiérarchique pour créer des structures de serveur modulaires. Il se distingue par un wrapper d'événements agnostique au runtime qui assure un comportement cohérent quel que soit l'environnement de déploiement. Le framework couvre un large éventail de capacités, incluant le routage de requêtes HTTP avec capture de paramètres dynamiques, la communication WebSocket en temps réel et des mesures de sécurité complètes comme la gestion CORS et l'authentification basique. Il fournit également des utilitaires pour la gestion de session via cookies, le service d'assets statiques et la gestion du trafic via proxy de requêtes et redirection d'URL. Le projet est implémenté en TypeScript.

    Allows registration of middleware that executes for every incoming request to handle cross-cutting concerns.

    TypeScript
    Voir sur GitHub↗5,353
  • digitallyinduced/ihpAvatar de digitallyinduced

    digitallyinduced/ihp

    5,294Voir sur GitHub↗

    ihp est un framework web typé et un orchestrateur d'applications full-stack conçu pour PostgreSQL. Il fonctionne comme un framework de rendu côté serveur et un ORM typé qui génère automatiquement des types d'enregistrements à partir de schémas SQL pour garantir la validation des requêtes à la compilation. La plateforme se distingue en vérifiant le routage, les requêtes de base de données et les modèles (templates) au moment de la compilation pour éviter les plantages à l'exécution. Elle implémente des interfaces web en temps réel utilisant les WebSockets pour une synchronisation instantanée des données et emploie l'hypermédia piloté par le serveur pour la mise à jour partielle du DOM. Le framework couvre un large éventail de capacités intégrées, incluant la gestion de l'identité utilisateur avec support des passkeys et OAuth, une couche de stockage de données complète avec migrations automatisées, et un système de rendu d'interface utilisateur complet avec templating HTML typé. Il fournit également des outils intégrés pour le développement d'API JSON, l'exécution de tâches asynchrones en arrière-plan et l'intégration financière pour les passerelles de paiement. Les environnements de production sont gérés via un déploiement NixOS déclaratif pour une infrastructure reproductible.

    Provides a system for integrating reusable middleware components to extend application functionality.

    Haskellframeworkhacktoberfesthaskell
    Voir sur GitHub↗5,294
  • elbywan/wretchAvatar de elbywan

    elbywan/wretch

    5,174Voir sur GitHub↗

    Wretch est une bibliothèque de client HTTP chaînable et un wrapper Fetch API conçu pour simplifier la configuration des requêtes réseau, l'analyse des réponses et la gestion des erreurs. Il fonctionne comme un gestionnaire de requêtes réseau et un framework de middleware pour gérer le cycle de vie de bout en bout des appels HTTP. Le projet se distingue par une interface fluide pour la configuration des requêtes et un système d'extension modulaire. Il utilise un résolveur de réponse programmable pour automatiser l'analyse et une architecture basée sur des plugins pour ajouter de nouvelles capacités aux objets de requête et de réponse. La bibliothèque couvre un large éventail de capacités opérationnelles, notamment les tentatives de requête automatiques avec recul exponentiel, la mise en cache des réponses et la déduplication des requêtes. Il fournit des outils pour la sérialisation dynamique des charges utiles, la validation du schéma de réponse et un pipeline de middleware pour la transformation globale des données et la surveillance des requêtes. Les fonctionnalités de sécurité incluent la prise en charge de l'authentification de base et le rafraîchissement automatique des jetons. La bibliothèque prend en charge des implémentations de fetch personnalisées pour assurer la compatibilité entre différents environnements.

    Modifies the structure or casing of data sent to or received from an API globally via middleware.

    TypeScript
    Voir sur GitHub↗5,174
  • sofastack/sofa-bootAvatar de sofastack

    sofastack/sofa-boot

    5,069Voir sur GitHub↗

    Sofa-boot est un framework d'application Java modulaire et une extension Spring Boot conçue pour isoler les modules d'application dans des contextes d'exécution séparés. Il fournit un orchestrateur de services JVM pour publier et référencer des services internes et une couche d'intégration de middleware d'entreprise pour déployer des starters middleware autonomes. Le framework évite les conflits de beans, de configuration et de version de dépendances en utilisant des chargeurs de classes indépendants et un arbre hiérarchique de contextes d'exécution distincts. Il optimise les temps de démarrage des applications d'entreprise en chargeant les modules indépendants en parallèle et en initialisant les composants de manière asynchrone. Le système inclut un vérificateur de préparation d'application qui bloque le trafic réseau externe et l'enregistrement de services jusqu'à ce que tous les composants soient entièrement initialisés. Il gère également l'orchestration de services en convertissant la communication interne des modules en appels de services distants et découple les flux de journalisation du middleware et du SDK des logs principaux de l'application.

    Uses self-contained configuration modules to automatically deploy and manage middleware services through a unified interface.

    Javasofa-bootsofa-boot-startersofastack
    Voir sur GitHub↗5,069
  • opennextjs/opennextjs-awsAvatar de opennextjs

    opennextjs/opennextjs-aws

    5,005Voir sur GitHub↗

    opennextjs-aws est un adaptateur d'infrastructure serverless et un outil de déploiement qui transforme les artefacts de build Next.js en paquets compatibles pour l'hébergement sur AWS Lambda et S3. Il fonctionne comme un adaptateur de déploiement qui mappe les sorties spécifiques au framework vers des fonctions serverless et du stockage d'objets. Le projet se distingue par l'implémentation d'optimisations spécifiques au serverless, y compris un gestionnaire de cache qui synchronise la régénération statique incrémentale et les caches de récupération (fetch) via S3 ou DynamoDB. Il dispose d'un optimiseur de démarrage à froid (cold start) qui utilise la minification de bundle et le réchauffement programmé des fonctions pour réduire la latence, ainsi qu'un pipeline d'optimisation d'images dédié pour récupérer les fichiers sources depuis S3 et les distribuer via CDN. Le système couvre un large éventail de capacités, y compris l'intégration de middleware edge, la revalidation en arrière-plan basée sur des files d'attente et la distribution de routes multi-cibles. Il gère également le trafic via le routage CDN, l'injection de données de géolocalisation et le streaming de réponses serveur pour améliorer le temps jusqu'au premier octet (TTFB). L'outil fournit des options de personnalisation étendues pour les pipelines de build, les comportements des adaptateurs et la logique serveur afin de prendre en charge des besoins architecturaux variés et des structures monorepo.

    Decouples routing and middleware logic into a standalone edge function to reduce latency.

    TypeScriptawsnextjssst
    Voir sur GitHub↗5,005
Préc.12Suivant
  1. Home
  2. Web Development
  3. Middleware

Explorer les sous-tags

  • Effect-BasedMiddleware that dispatches descriptive effect objects for execution by a coordinator. **Distinct from Middleware:** Distinct from general middleware: specifically yields effect descriptions to be executed by the saga middleware.
  • Global Middleware Registration3 sous-tagsAdds middleware steps to every route in a router so cross-cutting concerns run once per request. **Distinct from Middleware:** Distinct from Middleware: focuses on global application to all routes, not general middleware execution.
  • Path-IsolatedMiddleware that is scoped to execute only for specific URI paths. **Distinct from Middleware:** Focuses on path-based isolation of middleware, rather than global execution or specific API logic.
  • Pluggable Middleware StartersSelf-contained configuration modules used to automatically deploy and manage middleware services. **Distinct from Middleware:** Distinct from general middleware: focuses on the 'starter' pattern for automatic deployment and management via a unified interface.
  • Type DefinitionsType definitions for function events and middleware contexts to ensure compile-time checking. **Distinct from Middleware:** Distinct from Middleware: focuses on the provision of type definitions for the middleware ecosystem.