Posta: A fully open source mail delivery platform for incoming & outgoing e-mail

Wait 5 sec.

Hi all, I've spent the last two months building Posta as a side project, and I'm finally happy enough with it to share it. I want anyone who needs it to be able to use it, so it's MIT licensed and completely free. There's no paid tier, no message caps, no licence key, and it doesn't phone home. So what is it? It's a self-hosted platform for the email your apps send: password resets, sign-in codes, receipts, that sort of thing. It's basically your own Postmark or Mailgun running on your own box. You get an SMTP server, a send API, a delivery worker and a dashboard. What it does so far: Send over SMTP or an HTTP API, with separate credentials for each app Generates the SPF, DKIM and MX records for your domains and checks DNS until they resolve. Outgoing mail is DKIM signed Retries temporary failures, and puts hard bounces on a suppression list Full delivery history, including what the remote server said on each attempt Signed webhooks for sent, delayed, failed and held messages Handles inbound mail too, passed to an HTTP endpoint or forwarded over SMTP, with Rspamd/SpamAssassin and ClamAV IP pools and per-app send limits, so one noisy app can't ruin the reputation of the others Optional open and click tracking on your own domain It's written in TypeScript on Bun, with Postgres underneath. It's a first release (0.1.0), so there are rough edges I'd rather tell you about now than have you find the hard way: No Docker image yet, so for now you run it from source. The README walks you through it and it only takes a few commands Dashboard login uses Clerk. The free tier is plenty, but I know a hosted auth provider won't suit everyone Bounces that arrive after a message has been accepted aren't processed yet The rest of the known issues are listed in the changelog Also, the usual warning about self-hosting mail: you'll need a server that can send on port 25 and an IP that isn't on a blocklist. Posta handles the DNS and signing, but it can't fix a dodgy IP. Get started: https://posta.tacklabs.co.uk/ I've really enjoyed building it and I'd love for people to actually use it. All feedback is welcome, good or bad. If something breaks, please open an issue, and PRs are very welcome. Cheers   submitted by   /u/ChrisssyyyB [link]   [comments]