middyjs/middy

🛵 The stylish Node.js middleware engine for AWS Lambda 🛵

View on GitHub ↗Jump to charts ↓Open shareable report →

Summary Information

Updated 35 minutes ago
Added to GitGenius on September 17th, 2026
Created on August 3rd, 2017
Open Issues & Pull Requests: 7 (+0)
GitHub issues: Enabled
Number of forks: 400
Total Stargazers: 3,904 (+0)
Total Subscribers: 34 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 15.7 hours
Mean response time: 24.1 days
90th percentile: 15.8 days
Tracked items: 101

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Work labelled "type-systems" is answered fastest, typically in about 11 hours, while "feature request" waits about 3 days. Three people close 96% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 5
New in 7 days: 1
Closed in 7 days: 1
Avg open age: 303 days
Stale 30+ days: 1
Stale 90+ days: 1

Recent activity

Opened in 7 days: 1
Closed in 7 days: 1
Comments in 7 days: 2
Events in 7 days: 5

Top labels

  • bug (59)
  • feature request (25)
  • type-systems (13)
  • blocked (5)
  • enhancement (5)
  • documentation (3)
  • middleware (3)
  • breaking change (1)

Detailed Description

Middy is a middleware engine for AWS Lambda that runs on Node.js.

The tool addresses the challenge of keeping Lambda handlers clean and maintainable by separating cross-cutting concerns from business logic. It works by wrapping your handler function with a chain of middleware that execute before and after your core logic, allowing you to attach reusable steps for parsing, validation, authentication, observability, error handling, and AWS service integration without cluttering your handler code.

Middy suits teams building serverless applications on AWS Lambda who want to reduce boilerplate and share common patterns across multiple handlers. It works well for projects where you need consistent request processing, response formatting, or error handling across your Lambda functions. The tool is particularly valuable if you're managing multiple handlers and want to avoid duplicating logic like input validation, logging, or AWS SDK initialization.

The project maintains comprehensive automated testing including unit tests, dynamic application security testing, performance testing, static application security testing, and linting. The codebase achieves complete code coverage and follows conventional commit standards. Security practices include provenance verification and SLSA level 3 compliance.