chasquid is a production-grade SMTP (email) server written in Go, focusing on simplicity, security, and ease of operation. It handles incoming and outgoing email with full support for modern email security standards including STARTTLS, DKIM signing and verification, SPF checking, MTA-STS enforcement, and per-domain security level tracking. The server architecture is modular: the main daemon delegates SMTP protocol handling to the internal/smtpsrv package, manages a persistent email queue via internal/queue, performs alias resolution with hooks via internal/aliases, and delivers mail either locally through an LMTP-based MDA (cmd/mda-lmtp) or remotely via SMTP courier with TLS and MX fallback. Authentication integrates with Dovecot or a local user database using scrypt password hashing. Configuration is defined via protobuf text format, supporting hot reload of domains, users, and aliases without restart. The repository includes CLI tools for administration (chasquid-util), SMTP connectivity checking (smtp-check), and Dovecot authentication testing (dovecot-auth-cli). A comprehensive test suite covers unit, integration, and fuzz tests, with test data for DKIM, SPF, aliases, and various protocol edge cases. The repository also provides a Dockerfile for containerized deployment and extensive documentation in Markdown and man pages. While primarily an application, the codebase contains several well-designed internal packages that could be extracted for reuse, such as the network tracing library, safe I/O utilities, and OpenMetrics exporter.
This is a full-stack PHP web application for parsing, storing, and viewing DMARC aggregate (RUA) reports. It provides a web interface for administrators to manage domains, users, and reports, and includes CLI utilities for automated report fetching, cleanup, and summary email generation. The architecture follows a layered design with database abstraction via mapper interfaces, multiple report source implementations (IMAP mailboxes, local directories, remote filesystems, file uploads), and a plugin system. The front-end uses vanilla JavaScript with custom reusable UI components (tables, dialogs, multiselect) and a hash-less router. The codebase is well-structured, includes unit tests, and demonstrates strong software engineering patterns such as the repository pattern, factory methods, and interface-segregated database mappers. However, it relies on PHP extensions like imap (deprecated in PHP 8.4), uses MySQL-specific SQL, and has some XSS concerns due to innerHTML usage. It is not a data research repository; it is a production-ready application for managing DMARC reporting.