/Mailkat

A mailing and mail scheduling application

Primary LanguageJavaScript



MailKat


                           

A Mailing and Mail Scheduling App.

Description

MailKat is a MERN-based full-stack web app where users can register and login to send recurring and scheduled mails to the recipients. MailKat has options for custom as well as google sign-in methods. User can create mails, edit them and schedule the mails as well as send recurring mails. It also has option to create Campaigns with multiple recipients and reuse the campaigns to send emails to same audience. The scheduling can be done in different ways like-

Schedule Action
Once Sends the email once
Timely Schedule Keeps sending at a set number of seconds
Daily Schedule Sends daily at a set time
Weekly Schedule Sends weekly at a set time
Monthly Schedule Sends monthly at a set date and time
Yearly Schedule Sends yearly at a set date and time

Features

  • MailKat features Login and SignUp via Username - Password as well as Gmail Sync (Login with Gmail).
  • A Home page that has the list of all the mails scheduled for future.
  • Create a campaign to form a set of recipients to schedule mail to.
  • View all your email campaigns
  • A History Page that has the list of mails sent till now.
  • Create new mail, Edit it with MailKat's own Text Editor.
  • The Editor has features of bold, italics, text colour and many more.

Mail Features

Send mail via campaign:

Create a campaign to form a set of recipients to schedule mail to and reuse it whenever needed!

  • Subject
  • Schedule Selector (type of schedule and timings)
  • Mail Body
  • Campaign Selector

Without campaign:

  • To
  • CC
  • BCC
  • Subject
  • Mail Body
  • Schedule Selector (type of schedule and timings)

Architecture Diagram



Installation and Setup

For frontend:

  • Clone the repository

git clone https://github.com/rishav4101/Mailkat-Frontend.git && cd Mailkat-Frontend
  • Install dependencies

npm install
  • Start the Application

npm run dev

The app gets hosted by default at port 3000.


For backend:

  • Clone the repository

git clone https://github.com/deadlycoder07/mailkat-backend.git && cd mailkat-backend
  • Install dependencies

npm install
  • Create .env and add the environment variable values as mentioned in .env.example

cp .env.example .env
  • Start the Application

npm start
  • The app gets hosted by default at port 8000.