bhansaliyash / MailerOwl

All in one Email Marketing Solution using Python and Django

Home Page:https://divyang02.github.io/MailerOwl/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MailerOwl - All in one Email Marketing Solution

Open Source Love DOI

CircleCI codecov Python Style Checker Formatting python code Lint Python

MailerOwl license MailerOwl forks MailerOwl stars MailerOwl issues MailerOwl issues-closed MailerOwl pull-requests

Report Bug Β· Request Feature

MailerOwl provides user functionality to schedule, send instant or recurring emails. User can also check the status of the emails from admin panel. Through our application, a user can schedule recurring emails to be sent over a particular duration that can be decided by the user. This product can be used by marketing teams to advertise their products and promotions to daily customers over a regular period of time.

πŸ† Features

  • Sending Email
  • Email Scheduling
  • Send Recurring Email
  • Check Email Logs

πŸš€ Video + Demo

MailerOwl

πŸ“– Documentation

The detailed documentation for the code can be found at - MailerOwl Docs

πŸ›  Installation Guide

  1. Install Docker on your operating system.
  2. Clone the github repository at a preferable location in your system.
git clone https://github.com/divyang02/MailerOwl.git
cd MailerOwl
  1. Create your account on MailJet and generate an API Key and API Secret Token.
  2. Copy the content of mail_sender.settings.py and make a new file local_settings.py in the same folder.
  3. Update MAILJET_API_KEY and MAILJET_API_SECRET fields in the local_settings.py.
  4. In local_settings.py update NAME, PASSWORD and USER fields as per your database config as written in docker-compose file in DATABASES dictionary
  5. Go to apps/email_scheduler/constants.py and update DEFAULT_FROM_EMAIL.
  6. Run docker compose up in a new terminal.
  7. Open another terminal and run the command docker exec -it mail_sender sh .
  8. In this terminal run the command python manage.py createsuperuser --settings=mail_sender.local_settings.
  9. Open your browser and go to 0.0.0.0:8000/admin.
  10. Login with your login credentials and enjoy the application.

πŸ‘€ Who can use our app

  1. If you are a user who is visiting our app, you can sign up as a user with view access to emails and email campaigns. You cannot edit or create your own email for security purposes.
  2. If you are an admin user, you can create, view, update and delete email and schedule email.
  3. To request for admin privileges, please email on mailerowl@proton.me with the purpose of use.

❗ TroubleShooting and Help Guide

  1. For any issues faced while using the application, please email the detailed description and steps to reproduce the error at mailerowl@proton.me .
  2. If you are a developer, please raise an issue on github with steps to reproduce and possible source of error.
  3. Our email is monitored 24x7 and we usually respond within 1 hour. Happy Emailing :).

🎯 Plan of Action

Phase 1

  1. Implement user registration and login functionality.
  2. UI for user login and registration.
  3. Implement simple email sending feature using Mailjet API.
  4. Add feature to allow users to schedule emails.
  5. Add recurring email functionality.
  6. Include application logging to monitor status of the emails.
  7. Dockerize the application
  8. Deploying applicatin on server

🍰 Contributing

Please contribute using GitHub Flow. Create a branch, add commits, and open a pull request.

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

πŸ‘₯ Contributors

Group 46


Divyang Doshi

Priyam Garg


Yash Bhansali


Dev Mehta


Manogna Choudary Potluri

About

All in one Email Marketing Solution using Python and Django

https://divyang02.github.io/MailerOwl/

License:MIT License


Languages

Language:Python 97.3%Language:HTML 2.4%Language:Dockerfile 0.3%