Birthday Email Sender is a Node.js web application built with Express, MongoDB, TypeORM, and Cron. It allows you to manage user information and sends birthday emails to users every day at 9 AM based on the specified timezone.
- User Management: Create, Read, Update, and Delete user profiles.
- Scheduled Emails: Automatically send birthday emails to users at 9 AM based on their timezone.
- Data Persistence: Store user information in a MongoDB database using TypeORM.
- Customizable: Easily configure the application's settings to match your requirements.
- Node.js: A runtime for executing JavaScript code on the server-side.
- Express: A web application framework for Node.js that simplifies building web applications.
- MongoDB: A NoSQL database for data storage.
- TypeORM: An Object-Relational Mapping (ORM) library for TypeScript and JavaScript.
- Cron: A time-based job scheduler to automate the birthday email sending process.
To get started with Birthday Email Sender, follow these steps:
- Clone the repository:
git clone https://github.com/raflymaulana28/birthday-email-sender.git
cd birthday-email-sender
- Install dependencies:
npm install
-
Set up your MongoDB connection by editing the configuration files on ormconfig.json.
-
Set up your email-sender url on env.
-
Start the application:
npm start
Once the application is running, you can use the API endpoints to manage user profiles and configure the birthday email settings.
The following API endpoints are available:
- GET /user: Get a list of all users.
- GET /user/:id: Get a specific user by their ID.
- POST /user: Create a new user.
- PUT /user/:id: Update a user's information.
- DELETE /user/:id: Delete a user.
You can configure the application by editing the following files:
ormconfig.json
: Configure your MongoDB connection details.
Make sure to check the application's documentation for more details on these configuration options.