Skip to content

Feature request: API Gateway Event Handler router #3251

Open
@gosantos

Description

@gosantos

Use case

Hi everyone,

I’m writing on behalf of Banxware, a strong advocate for AWS Powertools. We use both the Python and TypeScript versions in our serverless services, and we would love to have the same experience with our TypeScript stack as we do with Python.

We recently reviewed the RFC for an Event Handler Router (#2409) and wanted to ask more info about its development progress. This feature is critical for our team, as it would significantly improve our developer experience.

Our Context:

Banxware is a small team managing a product built entirely on serverless technologies: AWS Lambdas, API Gateway, DynamoDB, etc. Currently, the lack of a built-in router within Powertools for TypeScript presents a significant challenge. Without this functionality, we face difficulties running services locally and relying on excessive infrastructure work to test simple changes.

The router will provide us the follow benefits:

  • Improved Developer Experience: A router would streamline local development and testing by enabling us to simulate API Gateway behavior without requiring a full AWS deployment.
  • Increased Maintainability: Decoupling our code from specific AWS services like API Gateway would enhance code reusability and simplify infrastructure changes.

At the moment we are strongly considering the use of Hono as our go-to solution for this particular case. Hono has most of the features requried by us combined with a super small overhead. We understand Hono wasn't built exclusively for this use case and still misses some feature but for sure can provide most of the DX we are looking for. We consider yet other options as well such as NestJS because we ideally would like to have full fledge solution that combines routing, open api generation, validations etc.

We understand that development priorities may shift, but we believe a router would be a valuable addition to Powertools for TypeScript. Is there any update on when this feature will be addressed?

We'd be happy to contribute to the discussion or assist in any way possible.

Solution/User Experience

We envision a router that's as streamlined and user-friendly as Hono, but with the added benefit of supporting EventBridge. We're seeking a solution that eliminates the need for type casting to match Gateway V1, V2, ELB, and other services. Additionally, built-in helpers would significantly simplify testing, enabling us to write comprehensive integration tests that simulate real-world request scenarios.

We're also excited about the potential for future extensions, particularly the integration of Zod for schema validation and OpenAPI generation. This would drastically reduce boilerplate code, streamline development, and provide a robust error handling mechanism.

Alternative solutions

No response

Acknowledgment

Future readers

Please react with 👍 and your use case to help us understand customer demand.

Metadata

Metadata

Assignees

Labels

confirmedThe scope is clear, ready for implementationevent-handlerThis item relates to the Event Handler Utilityfeature-requestThis item refers to a feature request for an existing or new utility

Type

No type

Projects

Status

Working on it

Relationships

None yet

Development

No branches or pull requests

Issue actions