SmartReach AI is an AI-powered email marketing platform that helps businesses create and manage personalized campaigns while ensuring compliance with the Digital Personal Data Protection (DPDP) Act. It automates content generation, send time optimization, and campaign analytics, enabling businesses to improve engagement while handling customer data responsibly.
- AI-Powered Email Generation - LLM-generated production-ready HTML email templates using Google Gemini, Groq, and OpenRouter with tone-specific color palettes and modern designs
- Send Time Optimization - ML-based optimal send time prediction for maximum engagement based on historical click/open data
- Campaign Analytics - Interactive dashboards with click rates, open rates, and engagement delay metrics via Recharts
- Multi-User Support - User-scoped cache keys ensure data isolation between concurrent users
- Google OAuth Integration - Secure authentication via Google accounts
- Forgot Password Flow - OTP-based password reset via email
- DPDP Compliance - Built-in compliance with India's Digital Personal Data Protection Act
- Spam Detection - Automated spam score checking via Postmark API before sending
- Real-time Processing - Celery-based async email scheduling with per-user optimal timing
- Next.js 15.2.5 with TypeScript
- React 19
- Tailwind CSS
- Radix UI components
- Recharts for analytics
- Sonner for toast notifications
- Django 5.1.6 with Django REST Framework
- PostgreSQL database
- Redis for caching (DB 1) and Celery broker (DB 0)
- Celery for async email scheduling
- Gunicorn with gthread workers (4 workers x 4 threads)
- Google Gemini 2.0 Flash (primary LLM)
- OpenRouter / Gemma 3 27B (fallback)
- Groq / LLaMA 4 Scout (fallback)
- Scikit-learn for send time optimization
- Pandas for engagement data analysis
- Python 3.10+
- Node.js 18+
- PostgreSQL
- Redis
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install dependencies
pip install -r requirements.txt
# Configure environment
cd backend
cp .env.example .env
# Edit .env with your credentials
# Set up database
python manage.py migrate
# Create superuser
python manage.py createsuperuser
# Run development server
python manage.py runservercd frontend
npm install
npm run devThe frontend will be available at http://localhost:3000 and backend at http://localhost:8000.
cd backend
celery -A backend worker --loglevel=info --concurrency=4SmartReach-AI/
├── backend/
│ ├── api/
│ │ ├── views.py # API endpoints
│ │ ├── models.py # User, Organization, Campaign models
│ │ ├── tasks.py # Celery email tasks
│ │ ├── urls.py # URL routing
│ │ ├── LLM_template_generator.py # Email generation with LLM
│ │ └── sto_model.py # Send time optimization
│ ├── backend/
│ │ ├── settings.py # Dev settings
│ │ ├── production_settings.py # Production settings
│ │ └── celery.py # Celery config
│ └── gunicorn_config.py # Gunicorn config (4 gthread workers)
├── frontend/
│ ├── app/
│ │ ├── page.tsx # Landing page
│ │ ├── login/ # Login + forgot password
│ │ ├── home/ # Dashboard
│ │ ├── write-email/ # Company email campaign builder
│ │ ├── write_email/ # Individual email builder
│ │ ├── dashboard/[id]/ # Campaign detail view
│ │ ├── admin/ # User management
│ │ ├── about/ # Team page
│ │ └── components/ # Shared UI components
│ └── public/images/ # Team photos, carousel assets
└── requirements.txt
SECRET_KEY=your-secret-key
DEBUG=False
ALLOWED_HOSTS=your-domain.com
DB_NAME=smartreach_db
DB_USER=smartreach_user
DB_PASSWORD=your-db-password
DB_HOST=localhost
DB_PORT=5432
GOOGLE_OAUTH2_CLIENT_ID=your-client-id
GOOGLE_OAUTH2_CLIENT_SECRET=your-client-secret
EMAIL_HOST_USER=your-email@gmail.com
EMAIL_HOST_PASSWORD=your-app-password
CELERY_BROKER_URL=redis://localhost:6380/0
FRONTEND_URL=https://your-domain.com
GROQ_API_KEY=your-groq-key
GOOGLE_API_KEY=your-google-ai-key
See backend/.env.example for the full list.
- Noel Abraham - Full Stack Developer
- Rahul Omalur - Backend Engineer
- Mehul - LLM Engineer
- Tharun - ML Engineer
This project is licensed under the terms specified in the LICENSE file.