This project demonstrates how to build an event-driven architecture on AWS.
It uses Amazon S3, Amazon EventBridge, AWS Lambda, Amazon SNS, and Amazon SQS to process events asynchronously and deliver notifications.
- S3 โ Stores uploaded files that trigger events.
- EventBridge โ Routes S3 events to downstream services.
- Lambda โ Processes the file and publishes notifications.
- SNS โ Sends notifications to subscribers (email, SMS, HTTP, etc.).
- SQS โ Stores events for asynchronous processing or retries.
| Feature | Benefit | 
|---|---|
| Asynchronous | Decouples ingestion from processing | 
| Scalable | Handles high volumes of events | 
| Reliable | Ensures messages are not lost (SQS) | 
| Extensible | Add new consumers without changing producers | 
- File upload triggers for processing
- Automated workflows and notifications
- Decoupled microservices communication
- Retry and dead-letter handling for reliability
- Architecture diagram
- Terraform code for S3, EventBridge, Lambda, SNS, and SQS
- Example Node.js Lambda for file processing
- Deployment scripts
Here are a couple of screenshots showing the deployed event driven:




