Skip to content

Mailify

The mail server that wears your brand.

Mailify is a self-hosted transactional email server written in Rust. You give it a theme, a template id, and a recipient — it sends a branded email through your own SMTP provider. No SaaS, no vendor lock-in, no external service holding your template library hostage.

  • Branded out of the box — palette, fonts, logo, footer text injected into every template via a single Theme config object.
  • One Docker imagedonighost/mailify:<tag> ships binary + compiled templates + built-in migrations. docker run, done.
  • Templates as code — React Email (.tsx) compiles to pre-rendered HTML with minijinja placeholders preserved for runtime variables. Edit in your editor, ship in CI.
  • Durable queue — jobs persist in Postgres via apalis. A worker crash does not eat your outbound.
  • Per-job SMTP override — one install can fan out to many tenants, each using their own SMTP provider, with credentials accepted in-memory only.
  • Argon2 + JWT auth — API keys are argon2-hashed at rest; clients exchange them for short-lived JWTs per session.
  • Rust-fast, distroless-small — final image ≈20 MB, non-root, nothing but cc libs and the binary.
  • Indie / solo backend devs who don’t want to write a MJML template every time.
  • Small SaaS teams needing Postmark-like ergonomics without paying per email.
  • Agencies running multi-tenant stacks where each client needs its own visual identity.

If you need drag-and-drop campaign editors, audience segmentation, or bounce-analytics dashboards — Mailify is not for you. This is a sending server, not a marketing suite.

MIT. See LICENSE.