RUNMYMAILER.COM — v2.0 · Windows

Send real email straight from localhost.

RunMyMailer is a lightweight desktop app that spins up your own SMTP sender on 127.0.0.1 — so every app, script, and CMS on your machine can send mail without touching a third‑party gateway.

✓ Free to use ✓ Works fully offline ✓ 5‑minute setup
runmymailer — local session
$ runmymailer start
✓ SMTP server listening on 127.0.0.1:1025
✓ Local relay ready — no internet dependency
 
$ send --to client@example.com \
   --subject "Invoice #2291" --attach invoice.pdf
↻ queued delivered in 0.4s
$
Sender: your machine · Recipient: their inbox · Nothing in between

Runs alongside

PHP mail()Django / FlaskNode & NodemailerWordPress.NET SMTP client
WHY RUNMYMAILER

Everything your dev environment needs to send mail, nothing it doesn't.

No monthly quotas, no API keys to rotate, no third party reading your outgoing mail. Point any app at localhost and go.

Local SMTP server

A full SMTP endpoint on 127.0.0.1 that any language or framework can talk to — swap one config line and every existing mail call just works.

Real delivery, not a mailbox trap

Unlike a dev-only catcher, RunMyMailer actually relays to real inboxes — using the SMTP credentials you already own.

Runs entirely on your machine

No cloud dashboard, no third party queue. Your message content never leaves your network until it hits the recipient's server.

Delivery log, in plain view

Every send shows queued, relayed, and delivered status with the raw SMTP response — no guessing why a message didn't land.

Attachments & templates

Send PDFs, images, and HTML templates the same way your production system will — test the real thing, not a stand‑in.

Your credentials, your control

Connect the SMTP account you already trust. RunMyMailer relays through it — it never stores or resells your messages.

Optional real-time open & click tracking

See in the app the moment a recipient opens a campaign or clicks a link. Entirely opt-in via a tunnel token from tunnel.runmyapi.com, issued by request — sending without one works exactly the same, just without live stats.

SET UP ONCE

From download to delivered mail in three steps.

No server to rent, no DNS to configure before your first test send.

01

Install & launch

Download RunMyMailer, open it, and the local SMTP listener starts automatically on your machine.

SMTP_HOST=127.0.0.1
SMTP_PORT=1025
02

Point your app at localhost

Update one config value in your app, script, or CMS to the local host and port shown in the app.

mail.send(host="localhost", port=1025)
03

Send — and watch it arrive

RunMyMailer relays the message out and shows you the live delivery status as it happens.

status: delivered ✓ 0.4s
FAQ

Good to know

Do I still need an email account?

Yes — RunMyMailer relays through an SMTP account you already have (your provider, your company mail, or a transactional service). It gives that account a local address on your machine; it doesn't replace it.

Is this just for testing, like a mail catcher?

No. RunMyMailer actually delivers to the real recipient, so it works equally well for local development and for lightweight production sending from a single machine.

Which operating systems are supported?

RunMyMailer currently ships as a Windows installer, running the local SMTP listener on 127.0.0.1.

Is RunMyMailer really free?

Yes. Enter your email during setup and RunMyMailer generates your license key automatically — no payment required. If you find it useful, donations are welcome but never required.

How do I turn on open/click tracking?

Request a tunnel token at tunnel.runmyapi.com — each token is issued by an admin — then paste it into Tunnel Settings inside the app. Don't need real-time stats? Leave it blank; RunMyMailer sends normally either way.

Give every local app a real inbox to send from.

Free to download and use. Installed and sending within five minutes.

Get RunMyMailer