Open-source middleware software
2362 open-source libraries, tools and applications tagged middleware, ranked by how closely middleware is their primary purpose, then by adoption and maintenance health. Each entry links to a page with sources, use cases and when to choose or avoid it.
2362 products, primary matches first, then adoption-weighted; health v2 shown.
| Product | Health v2 | Stars | Maturity |
|---|---|---|---|
| RicoSuter/NSwag NSwag is a Swagger/OpenAPI 2.0 and 3.0 toolchain for .NET, ASP.NET Core, and TypeScript, written in C#. It generates OpenAPI specifications… | 83 | 7366 | active |
| typestack/class-transformer class-transformer is a TypeScript/JavaScript library that transforms plain objects into class instances and back using decorators. It suppo… | 57 | 7338 | stable |
| alibaba/flutter_boost FlutterBoost is a Flutter plugin from Alibaba that enables hybrid integration of Flutter pages into existing native iOS and Android apps wi… | 58 | 7197 | active |
| NVIDIA-NeMo/Guardrails NVIDIA NeMo Guardrails is an open-source Python toolkit for adding programmable guardrails to LLM-based conversational applications. It sit… | 90 | 7181 | active |
| dotnetcore/CAP CAP is a .NET library providing a lightweight event bus and a distributed transaction solution based on the Outbox pattern (local message t… | 91 | 7112 | active |
| CASL CASL is an isomorphic JavaScript authorization library that restricts what resources a user is allowed to access, using declarative rules t… | 100 | 7100 | stable |
| php-fig/http-message PSR-7 provides a set of common PHP interfaces for representing HTTP messages (requests and responses) as described in RFC 7230/7231, plus U… | 23 | 7034 | stable |
| paper-trail-gem/paper_trail PaperTrail is a Ruby gem that tracks changes to Rails ActiveRecord models, recording every create, update, and destroy as versioned snapsho… | 66 | 7029 | stable |
| netty-socketio A Java implementation of the Socket.IO server built on the Netty framework, supporting Socket.IO client versions 1.x through 4.x. It provid… | 51 | 7016 | stable |
| JVM-Sandbox JVM-Sandbox is a real-time, non-invasive AOP framework container for the JVM, built on Java Instrumentation to dynamically enhance methods … | 65 | 6960 | active |
| raphw/byte-buddy Byte Buddy is a Java library for generating and modifying Java classes at runtime without a compiler, offering a fluent API for creating ar… | 96 | 6892 | stable |
| pallets/werkzeug Werkzeug is a comprehensive WSGI utility library for Python web applications, providing request/response objects, URL routing, HTTP utiliti… | 99 | 6879 | stable |
| Prism Prism is a .NET framework for building loosely coupled, maintainable, and testable XAML applications across WPF, Avalonia, MAUI, Uno Platfo… | 67 | 6852 | stable |
| luraproject/lura Lura is an open-source Go framework for building ultra-performant API Gateways and proxies, formerly known as the KrakenD framework. It agg… | 80 | 6803 | stable |
| elazarl/goproxy GoProxy is a Go library for building customized HTTP/HTTPS proxy servers as a net/http handler. It supports regular proxying, CONNECT tunne… | 98 | 6764 | stable |
| gRPC Prometheus monitoring A Go library of gRPC middleware (interceptors) providing chained, ready-to-use implementations for auth, logging, tracing, metrics, retries… | 94 | 6760 | active |
| vercel/platforms A production-ready Next.js multi-tenant application template from Vercel that demonstrates subdomain-based tenancy with custom routing, Red… | 70 | 6710 | active |
| Swinject Swinject is a lightweight dependency injection framework for Swift, implementing inversion of control via a DI container. It helps split ap… | 37 | 6710 | stable |
| x402-foundation/x402 x402 is an open standard and SDK suite for internet-native payments built on the HTTP 402 status code, letting servers charge for API or co… | 64 | 6674 | active |
| PHP OAuth2 Server A standards-compliant OAuth 2.0 authorization server library for PHP, supporting all major grants (authorization code, client credentials, … | 88 | 6668 | stable |
| Harmony Harmony is a C# library for patching, replacing, and decorating .NET and Mono methods at runtime without modifying files on disk. It is wid… | 75 | 6661 | stable |
| BlockRunAI/ClawRouter ClawRouter is an open-source TypeScript LLM router built for autonomous AI agents, offering 71 models from OpenAI, Anthropic, Google, xAI, … | 79 | 6621 | active |
| markbates/goth Goth is a Go library providing a simple, idiomatic way to add multi-provider authentication to web applications via OAuth, OAuth2, and Open… | 52 | 6605 | active |
| ShareDB ShareDB is a realtime database backend based on Operational Transformation (OT) for synchronizing JSON documents across clients. It support… | 91 | 6541 | stable |
| Jeepay Jeepay is an open-source aggregated payment system for internet businesses, supporting normal merchant mode, multi-channel service-provider… | 87 | 6438 | active |
| Apache Camel Apache Camel is an open-source integration framework offering 350+ connectors for databases, APIs, message brokers, and cloud services, wit… | 77 | 6371 | stable |
| Django Channels Django Channels is an official Django project that adds asynchronous, event-driven capabilities such as WebSocket and long-poll HTTP suppor… | 72 | 6363 | stable |
| expressjs/session express-session is official session middleware for the Express web framework that manages user sessions via cookies holding only a session … | 74 | 6352 | stable |
| vllm-project/semantic-router vLLM Semantic Router is an open-source programmable routing and control layer for building Mixture-of-Models systems across heterogeneous L… | 81 | 6233 | active |
| express-validator/express-validator express-validator is an Express.js middleware wrapping the validator.js library for request validation and sanitization. It lets you declar… | 80 | 6233 | stable |
| AWS SDK for PHP The official AWS SDK for PHP (version 3), providing idiomatic PHP client APIs for over 400 Amazon Web Services including S3, DynamoDB, EC2,… | 94 | 6206 | stable |
| expressjs/cors A Node.js middleware for Express and Connect that sets CORS response headers, telling browsers which origins may read responses from your s… | 64 | 6193 | stable |
| i18next/next-i18next next-i18next is a thin layer on top of i18next and react-i18next that handles Next.js-specific internationalization wiring, including middl… | 100 | 6161 | active |
| hashicorp/go-plugin HashiCorp's Go plugin system that runs plugins as subprocesses communicating over RPC/gRPC, letting hosts consume plugins as natural Go int… | 79 | 6107 | stable |
| Auth.js (next-auth) Auth.js (formerly NextAuth.js) is an open-source, runtime-agnostic authentication library built on standard Web APIs, with deep integration… | 84 | 28373 | maintenance |
| ROS 2 ROS 2 (Robot Operating System) is a meta operating system consisting of software libraries and tools for building robot applications, from … | 96 | 6089 | stable |
| thephpleague/omnipay Omnipay is a framework-agnostic, multi-gateway payment processing library for PHP that provides a single consistent API across dozens of pa… | 60 | 6063 | stable |
| doctrine/event-manager The Doctrine Event Manager is a small PHP library providing a simple event system for subscribing to and dispatching events. It underpins e… | 77 | 6042 | stable |
| microsoft/tsyringe TSyringe is a lightweight dependency injection container for TypeScript and JavaScript supporting constructor injection via decorators. It … | 65 | 6001 | stable |
| lostisland/faraday Faraday is a Ruby HTTP client library that provides a common interface over multiple HTTP backends such as Net::HTTP, Typhoeus, and Patron.… | 100 | 5951 | stable |
| Workflow Core Workflow Core is a lightweight, embeddable workflow engine for .NET Standard that orchestrates long-running processes with state tracking a… | 92 | 5934 | stable |
| Go kit Go kit is a collection of Go packages that provide a comprehensive toolkit for building robust, maintainable microservices (or elegant mono… | 23 | 27419 | maintenance |
| Geyser Geyser is a proxy/bridge that translates packets between Minecraft: Bedrock Edition clients and Minecraft: Java Edition servers, enabling t… | 77 | 5911 | active |
| rack/rack-attack Rack::Attack is Rack middleware for protecting Ruby and Rails web applications from abusive clients. It lets you define rules to allow, blo… | 66 | 5764 | stable |
| changmingxie/tcc-transaction tcc-transaction is a Java framework implementing TCC (Try-Confirm-Cancel) distributed transactions for microservice architectures. It coord… | 23 | 5758 | stable |
| middleapi/orpc oRPC is a TypeScript framework for building end-to-end typesafe APIs without code generation, combining RPC-style typed clients with first-… | 86 | 5702 | active |
| CanCanCommunity/cancancan CanCanCan is an authorization library for Ruby and Ruby on Rails that restricts which resources a user can access. Permissions are defined … | 65 | 5683 | stable |
| CookieConsent CookieConsent is a lightweight, GDPR and CCPA compliant cookie consent management plugin written in vanilla JavaScript with no dependencies… | 62 | 5683 | active |
| react/metro Metro is the JavaScript bundler for React Native, providing fast bundling, a transformer pipeline, and a development server with hot reload… | 96 | 5641 | active |
| haraka/Haraka Haraka is a fast, highly extensible, event-driven SMTP server written in Node.js with a modular plugin architecture. It is widely deployed … | 93 | 5618 | stable |
| Caddy CertMagic is a Go library that provides fully-managed automatic HTTPS, handling TLS certificate issuance, renewal, and OCSP stapling via AC… | 93 | 5608 | stable |
| adamchainz/django-cors-headers A Django app that adds Cross-Origin Resource Sharing (CORS) headers to HTTP responses via middleware. It allows in-browser requests to a Dj… | 76 | 5581 | stable |
| charmbracelet/wish Wish is a Go library for building custom SSH applications, built on gliderlabs/ssh with sensible defaults and a middleware system analogous… | 94 | 5552 | active |
| Doorkeeper Doorkeeper is a Ruby gem (Rails engine) that adds OAuth 2.0 provider functionality to Ruby on Rails or Grape applications. It implements th… | 94 | 5523 | stable |
| permitio/opal OPAL (Open Policy Administration Layer) is an administration layer for policy engines such as Open Policy Agent (OPA) and Cedar Agent. It d… | 95 | 5513 | active |
| expressjs/body-parser Node.js body parsing middleware for Express and Connect that parses incoming HTTP request bodies and populates req.body. It provides JSON, … | 92 | 5497 | stable |
| Swashbuckle Swashbuckle.AspNetCore is a library that generates OpenAPI (Swagger) documents for ASP.NET Core APIs directly from code, with an embedded S… | 98 | 5494 | stable |
| liangxiegame/QFramework QFramework is a lightweight (under 1000 lines of core code) system design architecture and game development framework for Unity and Godot, … | 81 | 5487 | active |
| ardatan/graphql-tools GraphQL Tools is a TypeScript/JavaScript utility library for building, manipulating, mocking, and stitching GraphQL schemas using an SDL-fi… | 94 | 5429 | active |
| oakserver/oak Oak is a middleware framework for handling HTTP requests, inspired by Koa and Express, with an included middleware router. It runs on Deno,… | 59 | 5410 | active |
| Netflix/Hystrix Hystrix is a Java library for latency and fault tolerance in distributed systems, providing circuit breakers, thread/semaphore isolation, f… | 45 | 24485 | maintenance |
| unjs/ofetch ofetch is an improved fetch API client library for JavaScript/TypeScript that works across Node, browsers, and workers. It adds smart JSON … | 80 | 5363 | active |
| dunglas/mercure Mercure is an open protocol (with an IETF Internet-Draft) for pushing real-time updates to browsers and HTTP clients over Server-Sent Event… | 95 | 5344 | stable |
| Dragonboat Dragonboat is a feature-complete, high-performance multi-group Raft consensus library written in pure Go. It lets developers build strongly… | 34 | 5329 | stable |
| drapergem/draper Draper is a Ruby gem that adds a decorator/view-model layer to Rails applications. It wraps ActiveRecord models with presentation-specific … | 72 | 5277 | stable |
| ThinkJS ThinkJS is a Node.js web application framework that leverages full ES2015+ (ES6/7) features like async/await, with TypeScript support. It p… | 67 | 5268 | active |
| dherault/serverless-offline A Serverless Framework plugin that emulates AWS Lambda and API Gateway on your local machine. It starts an HTTP server that replicates the … | 98 | 5261 | active |
| CodeGenieApp/serverless-express A Node.js library that lets you run Express and other Node.js web frameworks on AWS Lambda and API Gateway (plus Lambda@Edge and Azure Func… | 68 | 5260 | active |
| OpenIddict OpenIddict is a flexible OAuth 2.0/OpenID Connect framework for .NET, providing server, client, and token validation stacks. It supports st… | 96 | 5257 | stable |
| reactor/reactor-core Reactor Core is a non-blocking reactive streams foundation library for the JVM, implementing a Reactive Extensions-inspired API with the Fl… | 95 | 5237 | stable |
| baomidou/dynamic-datasource A Spring Boot starter that enables rapid integration of multiple, dynamically switchable data sources in Java applications. It supports dat… | 74 | 5185 | active |
| elbywan/wretch Wretch is a tiny (~1.8KB gzipped) TypeScript wrapper around the fetch API with an intuitive, chainable syntax for making HTTP requests. It … | 85 | 5180 | active |
| Rack Rack is a minimal, modular Ruby library and specification that wraps HTTP requests and responses into a simple call, unifying the bridge be… | 81 | 5131 | stable |
| lsp-mode lsp-mode is an Emacs client for the Language Server Protocol, providing IDE-like features such as completion, diagnostics, code navigation,… | 78 | 5126 | active |
| sofastack/sofa-boot SOFABoot is an open-source Java framework built on top of Spring Boot, fully compatible with it, that adds production-grade enhancements su… | 61 | 5069 | active |
| ReactiveX/RxPY ReactiveX for Python (RxPY) is a library for composing asynchronous and event-based programs using observable sequences and pipable query o… | 85 | 5015 | active |
| Ocramius/ProxyManager A PHP library that generates and manages proxy classes for objects, supporting patterns like virtual proxies, lazy loading, and method inte… | 65 | 4942 | stable |
| ets-labs/python-dependency-injector Dependency Injector is a dependency injection (IoC) framework for Python, offering providers such as Factory, Singleton, Configuration, and… | 92 | 4916 | stable |
| Laravel DataTables A Laravel package that handles the server-side processing for the jQuery DataTables plugin, supporting Eloquent ORM, Fluent Query Builder, … | 96 | 4872 | active |
| imroc/req Req is a simple yet powerful Go HTTP client library with chainable APIs, supporting HTTP/1.1, HTTP/2, and HTTP/3. It offers built-in debugg… | 94 | 4866 | active |
| mroderick/PubSubJS PubSubJS is a dependency-free, topic-based publish/subscribe library for JavaScript. It decouples publishers from subscribers via asynchron… | 23 | 4855 | stable |
| Nav2 Nav2 is the industry-standard navigation framework for ROS 2, providing perception, path planning, control, localization, and behavior-tree… | 100 | 4821 | stable |
| ZijianHe/koa-router koa-router is Express-style routing middleware for the Koa web framework, supporting named parameters, nested routers, and async/await. It … | 50 | 4811 | stable |
| mitchellkrogza/nginx-ultimate-bad-bot-blocker A drop-in Nginx configuration package that blocks bad bots, spam referrers, vulnerability scanners, malware, adware, and fake Googlebots, w… | 75 | 4792 | active |
| graphql-go A GraphQL server library for Go focused on ease of use, with schema parsing, type-checked resolvers, and an HTTP relay handler. It supports… | 98 | 4754 | active |
| PancakeTAS/lsfg-vk lsfg-vk is a Vulkan layer that hooks into Vulkan applications on Linux to generate additional frames using Lossless Scaling's frame generat… | 51 | 4712 | active |
| Vue Router Vue Router is the official client-side routing library for Vue.js, providing expressive route definitions, navigation guards, and history m… | 99 | 4698 | stable |
| Autofac Autofac is an Inversion of Control (IoC) dependency injection container for .NET, .NET Core, and ASP.NET Core. It manages class dependencie… | 92 | 4659 | stable |
| tucnak/telebot Telebot is a Go framework for building Telegram bots on top of the Telegram Bot API. It provides a concise API with command routing, middle… | 58 | 4635 | active |
| ReactiveX/RxAndroid RxAndroid provides Android-specific bindings for RxJava 3, adding the minimal classes needed to write reactive components in Android apps. … | 64 | 19919 | maintenance |
| laruence/yaf Yaf (Yet Another Framework) is a high-performance PHP MVC framework written in C and distributed as a compiled PHP extension via PECL/PIE. … | 84 | 4511 | stable |
| express-jwt Express middleware that validates JSON Web Tokens (JWTs) using the webtoken library and attaches the decoded payload to the request object.… | 69 | 4507 | stable |
| typestack/routing-controllers A TypeScript framework for building structured, declarative class-based controllers with decorators on top of Express or Koa. It handles ro… | 68 | 4506 | stable |
| ankane/ahoy Ahoy is a first-party analytics library for Rails that tracks visits and events from Ruby, JavaScript, and native apps. Data is stored in y… | 75 | 4482 | stable |
| Millennium Millennium is an open-source modding framework for the desktop Steam Client that lets users create, manage, and install custom CSS themes a… | 97 | 4444 | active |
| Snailclimb/guide-rpc-framework A custom Java RPC framework built on Netty, Kryo (plus Protostuff/Hessian), and Zookeeper, with detailed tutorials explaining its implement… | 72 | 4431 | active |
| archtechx/tenancy Tenancy for Laravel (stancl/tenancy) is a PHP package that adds automatic multi-tenancy to Laravel applications with no code changes requir… | 87 | 4421 | stable |
| airbnb/DeepLinkDispatch DeepLinkDispatch is an annotation-based Android library for declarative deep link handling. Activities are annotated with @DeepLink and URI… | 84 | 4416 | stable |
| Absinthe Absinthe is a complete, production-ready GraphQL implementation and toolkit for Elixir. It provides compile-time-verified schema macros, a … | 90 | 4398 | stable |
| AspNetCore HealthChecks A collection of ASP.NET Core health check packages for widely used services and platforms, plus a HealthChecks UI with storage providers, w… | 59 | 4374 | active |