Send email you own , end to end

Transactional email you own end to end. Your sending domains, your reputation, your logs, and the record of everything you ever sent. Send through whichever provider suits you today and switch when it stops suiting you, without handing any of that to a platform sitting in the middle of your customers and you.

Try it on QuxCloud live demo · nothing to install
Open source
mail-kit crystal
0
suppressed addresses you email by accident. The send drops them before the wire
DKIM
signed on every message, with a key no platform holds but you
1
idempotency key: retries and replays converge on one message, never two
∞
transports you send over: SES, SMTP, memory, or your own
What it is

One library, whole, not a platform you rent

Domains you prove and hold

A DNS checklist verifies your sending domain and mail-kit generates and holds the DKIM key, not a platform that can revoke it. Your sending identity stays yours.

Sends that can’t double-fire

Suppressed addresses are dropped, everything else is signed and queued, and if your code retries, the customer still gets one email, not two.

Honest suppression

Bounces and complaints suppress automatically: per tenant and globally, and a send drops a suppressed address before the wire. No accidental re-sends, no list hidden inside “contacts”.

Signed webhooks

Delivered, bounced, complained, opened. Every event fans out to your endpoint as a signed, retried webhook. You get the truth about your mail, and it is verifiable.

Your database, your provider

It writes to your own database and sends over whichever provider you pick: Amazon SES, plain SMTP, or something else. There is no second service to run.

A send log per customer

Domains, messages, suppressions and events are separated by customer, so one tenant’s mail history is never visible from another’s account.

By the shape of it

A platform that owns your domain owns your deliverability. Hold the DKIM key yourself.

4 seams
25% Domains
25% Messages
25% Events
25% Webhooks

Domains, messages, events, webhooks: everything mail-kit owns, on your database and your provider.

How it works

Three moves, in order

01
Prove your domain

Add the DNS records it gives you. Your sending identity is now yours, and no platform can take it away.

02
Send

One call with from, to, subject and body. Suppressed addresses are dropped, the rest are signed and sent, and a retry never sends twice.

03
React to what came back

Delivered, bounced, complained, opened: events update suppression and fire signed webhooks to whoever asked.

mail-kit.ts
import { createMail } from '@quxkit/mail-kit';

// your database, your provider — SES, SMTP, or your own
const mail = createMail({ db: sql, transport: ses });

// a retry never sends twice
const message = await mail.send(tenantId, {
  from: '[email protected]',
  to: user.email,
  subject: 'Welcome',
  html,
  idempotencyKey: signupId,
});                            // checked, signed and on its way
“

A platform that owns your domain owns your deliverability. Hold the DKIM key yourself.

Run it now, embed it later