aiosmtpd is an SMTP server based on asyncio. Part of the aio-libs umbrella project, aiosmtpd supersedes the old asyncore/asynchat based smtpd module in the Python standard library.
From the aiosmtpd documentation:
The Python standard library includes a basic SMTP server in the smtpd module, based on the old asynchronous libraries asyncore and asynchat. These modules are quite old and are definitely showing their age. asyncore and asynchat are difficult APIs to work with, understand, extend, and fix.
With the introduction of the asyncio module in Python 3.4, a much better way of doing asynchronous I/O is now available. It seems obvious that an asyncio-based version of the SMTP and related protocols are needed for Python 3. This project brings together several highly experienced Python developers collaborating on this reimplementation.
This package provides such a implementation of both the SMTP and LMTP protocols.
Visit the aiosmtpd GitHub repository for more information.
Use the [aiosmtpd] tag for questions and problems related to using aiosmtpd.