The Cloud Reminder App is a ⛅️ cloud-based application that allows you to create reminders and automatically sends SMS 📱 and email 📧 notifications at the specified time. It utilizes Firebase Functions, Twilio for SMS functionality, and Nodemailer for email functionality.
- Create reminders with a message, phone number, email, and reminder time. ⏰
- Reminders are stored in Firestore for persistence. 💾
- Automatic SMS reminders sent using Twilio. 📲
- Automatic email reminders sent using Nodemailer. ✉️
- Scheduled reminders based on the specified reminder time. 📆
Before running the Cloud Reminder App, ensure you have the following prerequisites:
- A Firebase project set up. 🔥
- Node.js and npm (Node Package Manager) installed on your machine. 🚀
To get started with the Cloud Reminder App, follow these steps:
- Clone the repository:
git clone https://github.com/ighoshsubho/Cloud-Reminder.git
📥 - Navigate to the project directory: cd reminder-app 📂
- Install the dependencies: npm install ⚙️
Before running the Cloud Reminder App, make sure to configure the following:
- Firebase project: Set up your Firebase project and obtain the necessary configuration credentials. Update the Firebase configuration in the Firebase initialization code. 🔑
- Twilio: Sign up for a Twilio account and obtain your Twilio SID and token. Update the Twilio client initialization with your Twilio credentials. 📞
- Nodemailer: Create a Gmail account to use as the sender for email reminders. Update the transporter configuration with your Gmail account details. 📧
The Cloud Reminder App consists of two main components: creating a reminder and sending reminders.
To create a reminder, make an HTTP POST request to the /createReminder
endpoint with the following parameters:
message
: The reminder message. 💬phoneNumber
: The phone number to receive SMS reminders. 📱email
: The email address to receive email reminders. 📧reminderTime
: The time at which the reminder should be sent (formatted as ISO string). ⏰
The Cloud Reminder App automatically sends reminders at the specified time using Firebase's Pub/Sub scheduler.
- SMS Reminders: The sendReminderSMS function sends SMS reminders. It runs every minute and sends SMS messages using Twilio. 📲
- Email Reminders: The sendReminderEmail function sends email reminders. It runs every minute and sends email notifications using Nodemailer. ✉️
Contributions to the Cloud Reminder App are welcome! If you encounter any issues or have suggestions for improvements, please submit a pull request or open an issue on the GitHub repository. 🎉
The Cloud Reminder App is licensed under the MIT License. 📝