Send transactional email from your own infrastructure not a third party
S

Send transactional email from your own infrastructure not a third party

Send transactional email from your own infrastructure not a third party

4,419 stars
N/A forks
N/A contributors

README

Project documentation from GitHub

Send Transactional Email Yourself: A Look at UseSend

Let's be honest, managing transactional email can be a pain. You either get locked into a third-party service with its own pricing, limits, and potential delivery issues, or you face the daunting task of building and maintaining your own email-sending infrastructure. It often feels like you have to choose between convenience and control.

What if you could have both? That's the idea behind UseSend. It's a straightforward, self-hosted solution that lets you send emails directly from your own servers, cutting out the middleman and giving you full ownership of your email pipeline.

What It Does

UseSend is a self-hosted email API server. You run it on your own infrastructure, and it provides a simple, clean API endpoint (similar to services like SendGrid or Resend) that your applications can use to send transactional emails. It handles the connection to your SMTP server (like Postfix, Amazon SES, or a similar service) and manages the queueing and sending logic, so you don't have to.

In short, it wraps the complexity of reliable email delivery into a single service you control, replacing the external API dependency with an internal one.

Why It's Cool

The cool factor here is all about simplicity and ownership. You're not adding a new third-party dependency; you're adding a internal service that removes an external one. This has some clear benefits:

  • No Vendor Lock-in: Your email-sending logic isn't tied to a specific provider's API, features, or pricing changes.
  • Cost Control: Once it's running, your main costs are just your infrastructure and SMTP service (which can be very cheap, like Amazon SES). No surprise bills based on volume spikes.
  • Privacy & Data Control: Your email data and recipient lists never leave your ecosystem. This is a big deal for compliance and peace of mind.
  • It's Just an API: For your application code, nothing much changes. You swap out the third-party API base URL for your own UseSend instance's URL. The integration pattern stays familiar.
  • Built with Go: It's a single binary, which makes it easy to deploy and run almost anywhere—Docker, a VM, or even a simple process manager.

How to Try It

The quickest way to get started is with Docker. The repository provides a clear example.

First, clone the repo:

git clone https://github.com/usesend/useSend.git
cd useSend

You can run it directly with Go or use the provided Docker example. The key is to set the necessary environment variables for your SMTP server. Check out the docker-compose.yml file in the repo for a working setup that includes a test SMTP server (MailHog) t

Did you like this issue?

Join our weekly newsletter

Love discovering amazing projects?

Help us continue bringing you the best open-source discoveries every week.

Back to Projects
Last updated: Jan 23, 2026