A high-performance Mail Transfer Agent based on LibEvent.
π Written in Nim language
nimble install meowmail
We want to build a simple, efficient, and easy-to-use SMTP server in Nim that can be used for sending and receiving emails in various applications, from testing email functionality in development environments to running a fully-featured mail server for anyone who wants to host their own email.
MeowMail is designed to be a lightweight and high-performance SMTP server that can handle a large number of concurrent connections while providing essential features like TLS encryption, authentication, and MX delivery. It also includes an IMAP server for email retrieval and management.
- High-performance SMTP & IMAP server
- Based on LibEvent library for efficient event-driven networking
- Supports SMTP authentication and TLS encryption
- Efficient handling of concurrent connections
- Simple API for handling incoming emails and IMAP commands
- HTTP auth proxy for integration with external authentication systems
- Made for Unix-like systems (Linux, macOS, BSD)
- Nim compiler >= 2.0
- OpenSSL development libraries
- LibEvent development libraries
Testing MeowMail on a home connection can be tricky due to ISP restrictions on port 25. If your ISP blocks the outgoing SMTP port 25, the only way to test MeowMail is to run it locally and connect to it using an email client configured to use localhost as the SMTP server.
Otherwise, you can use a VPS or any cloud server with an open port 25 to test sending emails to external addresses. Try a VPS from Hetzner using our referral link for easy testing.
Use a temporary, disposable email account service like TempMail to receive test emails.
Note, ensure you have swaks installed for testing SMTP functionality.
todo
- π Found a bug? Create a new Issue
- π Wanna help? Fork it!
- π Get β¬20 in cloud credits from Hetzner
MIT license. Made by Humans from OpenPeeps.
Copyright OpenPeeps & Contributors β All rights reserved.