In simple English
Email servers send daily reports about who is sending mail from your domain. These reports arrive as messy email attachments with complex code inside. Nobody reads them as raw text files. This tool logs into your email inbox, collects those files, and turns them into a clean website. You can see which servers are allowed to send your mail and which ones are blocked.
What it is
A single program written in the Go programming language that connects to an email inbox, parses incoming security reports, and stores them in a local SQLite database (a file-based data storage system). It runs a web dashboard on a single port and exposes metrics for monitoring tools.
What it is good for
Solo builders and small business owners who want to secure their domain against spammers without paying for a managed cloud monitoring service.
- Pulls reports automatically from any standard email mailbox using IMAP.
- Stores all data in a single SQLite file with no heavy database server needed.
- Includes Prometheus metrics and a ready-made Grafana dashboard for monitoring.
- Requires an existing email inbox to receive raw reports from mail providers.
- Lacks built-in user authentication on the web dashboard, so you must protect it with a reverse proxy.
- Does not parse failure reports or TLS connection reports yet.
manually opening XML attachment files sent by mail providers
Grafana for viewing system health graphs alongside your email stats
- domainaware/parsedmarc1.3k stars
The older Python standard for parsing DMARC reports, which uses Elasticsearch and requires a more complex server setup.
- smallstep/certificates9.0k stars
A certificate authority you run yourself, for machines the public internet cannot reach.
- michelp/pgsodium614 stars
A PostgreSQL extension that brings libsodium's encryption functions into SQL, with a root key the database cannot read back.
- pgaudit/pgaudit1.7k stars
A PostgreSQL extension that records what was done to the database, in the database's own log.
docker run -d --name parse-dmarc -p 8080:8080 \ -e IMAP_HOST=imap.gmail.com \ -e IMAP_PORT=993 \ -e IMAP_USERNAME=dmarc@example.com \ -e IMAP_PASSWORD='your-app-password' \ -v parse-dmarc:/data \ dmarcguard/parse-dmarc