DripEmail.org

Documentation

Complete guide to using DripEmails.org

Configuration Guide

Configure environment variables, database settings, and email configuration for DripEmails.org.

Environment Variables

Create a .env file in your project root with these settings:

Django Settings

# Django Configuration
SECRET_KEY=your-secret-key-here-change-in-production
DEBUG=True  # Set to False in production
ALLOWED_HOSTS=localhost,127.0.0.1,yourdomain.com
DJANGO_SETTINGS_MODULE=dripemails.settings

Database Configuration

PostgreSQL (Recommended)

DB_ENGINE=django.db.backends.postgresql
DB_NAME=dripemails
DB_USER=dripemails
DB_PASSWORD=your_password_here
DB_HOST=localhost
DB_PORT=5432

MySQL

DB_ENGINE=django.db.backends.mysql
DB_NAME=dripemails
DB_USER=dripemails
DB_PASSWORD=your_password_here
DB_HOST=localhost
DB_PORT=3306

SQLite (Development Only)

DB_ENGINE=django.db.backends.sqlite3
DB_NAME=db.sqlite3

Email Configuration

Development (No Authentication)

EMAIL_BACKEND=django.core.mail.backends.smtp.EmailBackend
EMAIL_HOST=localhost
EMAIL_PORT=1025
EMAIL_HOST_USER=
EMAIL_HOST_PASSWORD=
EMAIL_USE_TLS=False
DEFAULT_FROM_EMAIL=noreply@dripemails.org

Production (With Authentication)

EMAIL_BACKEND=django.core.mail.backends.smtp.EmailBackend
EMAIL_HOST=localhost
EMAIL_PORT=1025
EMAIL_HOST_USER=your_username
EMAIL_HOST_PASSWORD=your_password
EMAIL_USE_TLS=False
DEFAULT_FROM_EMAIL=noreply@yourdomain.com

Celery Configuration (Optional)

CELERY_ENABLED=  # Empty = auto-detect, True/False to override
CELERY_BROKER_URL=redis://localhost:6379/0
CELERY_RESULT_BACKEND=django-db
REDIS_URL=redis://localhost:6379/0

💡 Celery Auto-Detection

Leave CELERY_ENABLED empty for automatic detection:

  • Windows + DEBUG=True: Celery disabled (no Redis needed)
  • Linux/macOS or DEBUG=False: Celery enabled (Redis required)
  • Override by setting CELERY_ENABLED=True or False

AI Features (Optional)

HUGGINGFACE_API_KEY=hf_your_api_key_here

Get your free API key from Hugging Face

SMTP Server Configuration

Configure the built-in SMTP server:

Django Settings

SMTP_SERVER_CONFIG = {
    'host': 'localhost',
    'port': 1025,
    'auth_enabled': True,
    'allowed_domains': ['yourdomain.com'],
    'max_message_size': 10485760,  # 10MB
    'rate_limit': 100,  # emails per minute
}

Command Line Options

# Development (no authentication)
python manage.py run_smtp_server --no-auth

# Custom port
python manage.py run_smtp_server --port 2525

# Production (with authentication)
python manage.py run_smtp_server --host 0.0.0.0 --port 25

# With logging
python manage.py run_smtp_server --log-to-file --save-to-db

Security Settings

⚠️ Production Security

Always configure these settings for production:

DEBUG=False
SECRET_KEY=generate-a-new-secret-key
ALLOWED_HOSTS=yourdomain.com,www.yourdomain.com
SECURE_SSL_REDIRECT=True
SESSION_COOKIE_SECURE=True
CSRF_COOKIE_SECURE=True

Complete .env Example

# Django
SECRET_KEY=your-secret-key-here
DEBUG=False
ALLOWED_HOSTS=yourdomain.com

# Database
DB_ENGINE=django.db.backends.postgresql
DB_NAME=dripemails
DB_USER=dripemails
DB_PASSWORD=secure_password
DB_HOST=localhost
DB_PORT=5432

# Email
EMAIL_BACKEND=django.core.mail.backends.smtp.EmailBackend
EMAIL_HOST=localhost
EMAIL_PORT=1025
EMAIL_HOST_USER=founders
EMAIL_HOST_PASSWORD=secure_password
EMAIL_USE_TLS=False
DEFAULT_FROM_EMAIL=noreply@yourdomain.com

# Celery (Optional)
CELERY_ENABLED=True
CELERY_BROKER_URL=redis://localhost:6379/0
CELERY_RESULT_BACKEND=django-db
REDIS_URL=redis://localhost:6379/0

# AI Features (Optional)
HUGGINGFACE_API_KEY=hf_your_api_key_here

# Security
SECURE_SSL_REDIRECT=True
SESSION_COOKIE_SECURE=True
CSRF_COOKIE_SECURE=True