{"adoption": {"forks": 149, "observed_at": "2026-08-28T04:05:51.057757+00:00", "stars": 1897}, "canonical_url": "https://ross.abutalabs.com/products/django-anymail", "card": {"archived": false, "artifact_type": "library", "description": "Django email backends and webhooks for Amazon SES, Brevo, MailerSend, Mailgun, Mailjet, Mailtrap, Postmark, Postal, Resend, Scaleway TEM, SendGrid, SparkPost, Unisender Go and more", "domain": ["email", "web-development", "backend", "apis"], "enriched": true, "function": ["email", "webhook", "http-client", "middleware"], "health_score": 97, "homepage": "https://anymail.dev", "language": "Python", "license": "BSD-3-Clause", "license_family": "permissive", "maturity": "active", "member_repos": ["anymail/django-anymail"], "name": "anymail/django-anymail", "platform": ["python", "self-hosted"], "pushed_at": "2026-07-30T22:29:31+00:00", "repo": "anymail/django-anymail", "stars": 1897, "tags": ["django", "transactional-email", "esp", "email-backend", "sendgrid", "mailgun", "amazon-ses", "postmark", "inbound-email", "email-tracking", "web-server"], "topics": ["django", "email", "mailgun", "postmark", "sendgrid", "sparkpost", "mandrill", "mailjet", "sendinblue", "amazon-ses", "postal", "mailersend", "brevo", "resend", "resend-email", "unisender", "unisender-go", "scaleway", "mailtrap"], "urls": [], "use_cases": ["send transactional email from Django via Mailgun or SendGrid", "switch email providers without rewriting email code", "receive inbound email through ESP webhooks in Django", "track email opens, bounces, and deliveries with Django signals", "send batch/merge-template emails through an ESP", "embed inline images in HTML email from Django"], "what_it_is": "A Django library providing email backends and webhook integrations for many transactional email service providers (ESPs) such as Amazon SES, Mailgun, SendGrid, Postmark, and Resend. It extends django.core.mail with a consistent, ESP-portable API for sending, tracking, and receiving email.", "when_to_avoid": ["you're not using Django (it depends on django.core.mail)", "you need a general-purpose SMTP library rather than ESP API integration", "you rely on an ESP not in the supported list"], "when_to_choose": ["you use Django and want a unified API across multiple transactional ESPs", "you need normalized webhook handling for delivery/tracking events", "you want to avoid vendor lock-in to a single email provider", "you need inbound email parsing with portable attachment access"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/django-anymail", "repo": "anymail/django-anymail", "role": "main", "score": 88}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:51.057757+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:12:48.351056+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1834a00c51aefbc72d7f8eae6f844a97bf20868793186d56f468c71eb9511ba0", "fetched_at": "2026-08-28T04:05:51.057757+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anymail/django-anymail"}, {"content_hash": "7162b66ec13e97e25a91a05c0b02ed9dd29b57cea008664ead37dba9dd6da575", "fetched_at": "2026-08-29T10:51:47.429265+00:00", "kind": "homepage", "missing": false, "url": "https://anymail.dev"}, {"content_hash": "b24714d5612170f7f1662e2a9c819ab0f33d32a7454de46b22f5eb5e532e669f", "fetched_at": "2026-08-29T10:51:47.440601+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/installation"}, {"content_hash": "c60f0af65a3960ae3288a7c7c2de0cfd3d1fc3c3de157f3dcf7cd9e3b88afae5", "fetched_at": "2026-08-29T10:51:47.446271+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/docs_privacy"}, {"content_hash": "5a36228c56aa1534bae23cee6635f4c644dd4e078731914701cc1332ad5204b6", "fetched_at": "2026-08-29T10:51:47.438654+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/quickstart"}, {"content_hash": "89b2ab70254785af5a4205367cc34b7e3c4e78598f5d3e83888da9059a56c3be", "fetched_at": "2026-08-29T10:51:47.450164+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/django-anymail/json"}, {"content_hash": "dfa1cd68d72557f75941b33438a30ad4a644bf3048b1a59d278db945ef433ab3", "fetched_at": "2026-08-29T10:51:47.442966+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/changelog"}, {"content_hash": "58cc8e68cfcda8cae4cc7542d871edd0f566db45f53ee39d2240a7b640522e64", "fetched_at": "2026-08-29T10:51:47.448144+00:00", "kind": "site_page", "missing": false, "url": "https://anymail.dev/en/stable/contributing"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 100, "rhythm": 71}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3828, "days_push": 34, "days_rel": 34, "gap_med": 108.5, "n_releases_24m": 7}, "score": 88, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}