MailGram is a robust email marketing platform built with Django, Django Rest Framework (DRF), PostgreSQL, Jinja, and Celery. It aims to provide a feature-rich environment for managing and sending marketing emails similar to popular services like Mailchimp.
- User Authentication: Secure user authentication system for account management.
- Email Templates: Create and manage customizable email templates using Jinja for dynamic content.
- List Management: Organize your audience with list management features.
- Campaigns: Schedule and send email campaigns to targeted lists.
- Analytics: Track email performance with analytics on open rates, click-through rates, etc. # TODO
- Asynchronous Processing: Use Celery for background tasks, ensuring efficient processing of email sending.
- Python: The core programming language.
- Django: The web framework for building the application.
- Django Rest Framework (DRF): For building the RESTful APIs.
- PostgreSQL: The relational database for data storage.
- Jinja: Template engine for dynamic email content.
- Celery: Distributed task queue for asynchronous processing.
-
Clone the repository:
git clone https://github.com/isanjaymaurya/mailgram-webservice.git cd mailgram-webservice
python -m venv venv
source venv/bin/activate
# For Linux/Mac
OR
.\venv\Scripts\activate
# For Windows
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver
The application will be accessible at http://localhost:8000
.
celery -A mailservice worker -l info