Skip to main content

Comprehensive email deliverability management tools

Project description

Email Deliverability Management Library

A comprehensive Python library for managing email deliverability, providing tools and guidance for email authentication (SPF, DKIM, DMARC), sender reputation monitoring, email list hygiene, and IP warming.

Features

  • Email Authentication

    • SPF record creation, validation, and analysis
    • DKIM key management and signature verification
    • DMARC policy configuration and reporting
  • Reputation Monitoring

    • IP blacklist checking
    • Feedback loop complaint processing
    • Domain reputation analysis
    • Bounce rate analysis
  • Email List Hygiene

    • Email format validation
    • MX record checking
    • Disposable email detection
    • List quality scoring and recommendations
  • IP Warming Tools

    • Customizable warming schedules
    • Volume distribution by hour
    • Multi-IP warming management
    • Best practice recommendations
  • Unified Facade Interface

    • Comprehensive deliverability checks
    • Simplified access to all tools
    • Actionable recommendations

Installation

pip install email_deliverability

Quick Start

from email_deliverability import DeliverabilityManager

# Initialize the manager with your domain and IP
manager = DeliverabilityManager(domain="example.com", ip="8.8.8.8")

# Analyze authentication setup
auth_results = manager.analyze_domain_setup()
print(f"Authentication Score: {auth_results['overall_score']}/100")

# Check IP reputation
ip_results = manager.check_ip_reputation()
if ip_results['status'] == 'clean':
    print("IP is not listed on any blacklists")
else:
    print(f"IP is listed on {len(ip_results['blacklisted_on'])} blacklists")

# Validate email addresses
emails = ["user@example.com", "invalid@nonexistent.domain", "test@mailinator.com"]
validation_results = manager.validate_email_list(emails)
print(f"List Quality: {validation_results['analysis']['quality_level']}")

# Create an IP warming plan
warming_plan = manager.create_ip_warming_plan(daily_target=10000, warmup_days=30)
print(f"Warming schedule created for {warming_plan['warmup_days']} days")

# Get comprehensive deliverability status
status = manager.check_deliverability_status()
for recommendation in status['recommendations']:
    print(f"- {recommendation}")

Command Line Interface

The library comes with a full-featured command line interface:

# Check domain authentication
email-deliverability auth --domain example.com

# Check IP reputation
email-deliverability reputation --ip 192.0.2.1

# Validate email addresses
email-deliverability validate --email user@example.com
email-deliverability validate --file emails.txt

# Run a comprehensive deliverability check
email-deliverability check --domain example.com --ip 192.0.2.1

# Generate an IP warming plan
email-deliverability warm-ip --ip 192.0.2.1 --days 30 --target 100000

# Update local resource cache
email-deliverability resources update

For full CLI documentation:

email-deliverability --help

Documentation

Full documentation is available at Read the Docs.

Development

# Clone the repository
git clone https://github.com/innerkore/email-deliverability.git
cd email-deliverability

# Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install development dependencies
pip install -e ".[dev]"

# Run tests
python -m unittest discover tests

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

email_deliverability-0.1.2.tar.gz (41.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

email_deliverability-0.1.2-py3-none-any.whl (42.6 kB view details)

Uploaded Python 3

File details

Details for the file email_deliverability-0.1.2.tar.gz.

File metadata

  • Download URL: email_deliverability-0.1.2.tar.gz
  • Upload date:
  • Size: 41.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.2

File hashes

Hashes for email_deliverability-0.1.2.tar.gz
Algorithm Hash digest
SHA256 c7fb8ff854c1ab997931b6c18b32c6a8e3066826c7ded89b8e04b55f7b6a22f1
MD5 598a63afac91a1935ff001d71dd192d6
BLAKE2b-256 20b7769ba705b0a5385a2739e43275827a7efc1cd895ed74e4929c97cd0ee8ce

See more details on using hashes here.

File details

Details for the file email_deliverability-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for email_deliverability-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 986f14b7c5809adf03e061f80b15b2e08fadea237c712135bc40360a7686425a
MD5 688f2adb0a4cfbc6e83ac2a5fc105089
BLAKE2b-256 96129a40c2145108ceab4c380c2f01193be42ff4819c9cc0d7f1ba5463d4d2c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page