Maddy
Composable all-in-one mail server written in Go.
Open the official app on maddy.email
This tool is hosted by its maintainers. Click below to open maddy.email in a new tab — it's their official demo.
Browse developer tools →What's next with Maddy?
Choose how you want to get started.
Use it free
Open the official tool or demo — no account needed.
Self-host it
Run the open-source version on your own infrastructure.
What is Maddy?
Maddy is an open-source, composable mail server designed to consolidate multiple email-related services into a single, unified platform. It serves as a replacement for traditional email infrastructure components like Postfix, Dovecot, OpenDKIM, and OpenSPF by integrating their functionalities into one daemon. The tool handles core email operations such as message delivery (SMTP), inbox management (IMAP), and security protocols (DKIM, SPF, DMARC, DANE, MTA-STS). Maddy is targeted at users seeking simplified email server management, including developers, system administrators, and organizations aiming to reduce maintenance overhead. It addresses the complexity of configuring and maintaining disparate tools by offering a streamlined configuration model and centralized management, while its IMAP storage remains in beta for advanced data persistence needs.
How it works
Maddy is a modern, modular email server that replaces traditional email stack components with a single, unified daemon. It supports SMTP for message delivery and acceptance, IMAP for inbox access, and integrates security protocols to enforce email authenticity and prevent spoofing. The tool is ideal for users who need a lightweight, maintainable alternative to legacy email systems. Its primary purpose is to simplify email server setup by eliminating the need to configure multiple separate services, reducing complexity and maintenance costs. Maddy handles core email functions: SMTP for sending and receiving messages, IMAP for accessing stored emails, and security protocols like DKIM, SPF, DMARC, DANE, and MTA-STS to enforce email authentication and prevent spam. It also supports advanced features such as TLS encryption, automatic certificate management via ACME, and customizable message routing rules.
How to use it
- 1Install Maddy via package managers, Docker, or source code. 2. Configure the unified configuration file (e.g., `maddy.conf`) to define SMTP/IMAP endpoints, security policies, and storage backends. 3. Enable TLS and ACME for certificate management. 4. Test the setup using tools like `swaks` for SMTP verification and `imapclient` for IMAP access. Practical tips: Use Docker for isolation, leverage the built-in documentation for configuration syntax, and monitor metrics via Prometheus for performance tuning.
What it can do
- mail server
Use cases
Assumptions and limitations
Assumptions
- source: https://github.com/foxcpp/maddy
- license: GPL-3.0 — free to use
- privacy: Self-hosted — you control your data
Limitations
- IMAP storage is in beta, limiting reliability for critical data
- Steeper learning curve for configuring complex security policies
- Dependence on external services for ACME certificate issuance
- Limited real-time debugging tools compared to traditional stacks
- Beta features may require manual intervention for stability
Understanding the result
Composable all-in-one mail server written in Go.
Tool details
- Clearly flagged when a network request is needed.
- No account, no sign-up, and no tracking of your content.
- Powered by (GPL-3.0).
- Built with
- (foxcpp/maddy)
- License
- GPL-3.0
- Runs locally
- No — requires a network request
- Verification
- Not yet verified
- Input
- Query
- Output
- Text
Built with foxcpp/maddy. OpenToolVault provides the discovery and browser interface while crediting the original project maintainers.
- Built with
- License
- GPL-3.0
Open-source project
OpenToolVault is an independent directory. We are not affiliated with or endorsed by this project.
References
- / — GitHub Repository
Upstream project · GitHub
- GPL-3.0 License
Upstream project
Frequently asked
What is Maddy and how does it differ from traditional email stacks?
Maddy is an all-in-one mail server that replaces multiple components like Postfix, Dovecot, and OpenDKIM with a single daemon. Unlike traditional stacks requiring separate configuration files for each service, Maddy uses a unified configuration model, reducing complexity. It integrates security protocols (DKIM, SPF, DMARC) and provides endpoints for SMTP, IMAP, and metrics, offering a streamlined alternative to legacy systems.
How does Maddy handle email security protocols like DKIM and DMARC?
Maddy natively supports DKIM for signing outgoing emails, SPF for validating sender domains, and DMARC for enforcing email authentication policies. It also implements DANE for TLS certificate validation and MTA-STS for enforcing secure SMTP connections. These protocols work together to prevent spoofing, ensure message integrity, and align with modern email security standards.
How do I configure Maddy to use Amazon S3 for email storage?
Edit the Maddy configuration file to specify the `blobstorage` backend with S3 parameters. For example: `blobstorage s3 { bucket = "your-bucket"; region = "us-east-1"; access_key = "your-key"; secret_key = "your-secret"; }`. Ensure AWS credentials are securely managed and test storage operations using the `maddy` CLI tools.
How does Maddy compare to Postfix and Dovecot?
Maddy consolidates Postfix's message transfer agent (MTA), Dovecot's IMAP server, and additional security tools into a single process. Unlike Postfix/Dovecot, which require separate configuration and maintenance, Maddy offers uniform configuration and reduced overhead. However, Dovecot is still preferred for stable IMAP storage, while Maddy excels in simplifying security and routing configurations.
How do I troubleshoot certificate errors in Maddy's TLS setup?
Certificate errors often stem from ACME configuration issues. Check the `tls` block in `maddy.conf` for valid ACME provider settings (e.g., Let's Encrypt). Verify domain ownership and ensure temporary directories for challenge files are writable. Use `maddy -v` for verbose logs and inspect the ACME error messages for specific resolution steps.