Skip to content

A mass mailing prototype using AWS services like lambda,SNS and S3.

Notifications You must be signed in to change notification settings

Harshit8384/AWS-Notify

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 

Repository files navigation

AWS Notify AWS Notify is a mass mailing system that leverages AWS services including Lambda, S3, and SNS to send bulk emails efficiently. The project is designed to be scalable, cost-effective, and easy to manage.

Table of Contents Project Overview Prerequisites Installation Configuration Usage Monitoring and Logging Contributing License Project Overview ECHO-MAIL is built to handle large volumes of emails by utilizing serverless architecture provided by AWS. The core components include:

AWS Lambda: For executing email sending logic. Amazon S3: For storing email templates and configurations. Amazon SNS: For notifications and managing email delivery status. Prerequisites Before you begin, ensure you have the following:

An AWS account with permissions to use Lambda, S3, and SNS. AWS CLI configured on your local machine. Node.js and npm installed. An email service provider (e.g., Amazon SES) configured and verified to send emails. Installation Follow these steps to set up the project:

  1. Clone the repository bash Copy code git clone https://github.com/Atul-Kumar-Rana/AWS-Notify.git cd ECHO-MAIL
  2. Install dependencies bash Copy code npm install
  3. Configure AWS CLI Ensure your AWS CLI is configured with the necessary permissions:

bash Copy code aws configure Configuration Configure the project by setting up the following environment variables:

  1. S3 Bucket Create an S3 bucket to store your email templates and configurations. Note down the bucket name for later use.

  2. Environment Variables Create a .env file in the root directory of your project and add the following variables:

makefile Copy code AWS_ACCESS_KEY_ID=your_aws_access_key AWS_SECRET_ACCESS_KEY=your_aws_secret_key AWS_REGION=your_aws_region S3_BUCKET_NAME=your_s3_bucket_name SNS_TOPIC_ARN=your_sns_topic_arn EMAIL_FROM=your_verified_email@example.com Usage

  1. Upload Email Templates to S3 Upload your email templates to the S3 bucket. Ensure they are properly formatted and accessible.

  2. Deploy Lambda Functions Deploy the Lambda functions using the AWS CLI or the Serverless framework.

bash Copy code serverless deploy 3. Send Emails To send emails, trigger the Lambda function with the required parameters such as the recipient list, email template, and other configurations.

Example Lambda Payload json Copy code { "recipients": ["recipient1@example.com", "recipient2@example.com"], "template": "welcome-email.html", "subject": "Welcome to AWS Notify "variables": { "username": "John Doe", "signup_date": "2024-07-28" } } Monitoring and Logging Utilize AWS CloudWatch to monitor and log the activities of your Lambda functions. Set up necessary alarms and notifications via SNS.

Contributing We welcome contributions! Please read the CONTRIBUTING.md for guidelines on how to get involved.

License This project is licensed under the MIT License. See the LICENSE file for details.

About

A mass mailing prototype using AWS services like lambda,SNS and S3.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published