Gå til indhold
Alle projekter

Projekt

PostStack

Den e-mail-API, jeg byggede efter et år med at sy tre leverandører sammen. Transaktionelle mails, marketing og indgående mail i ét produkt, med typet SDK, rigtig testtilstand og hosting i EU.

BunHonoPostgresRedisBullMQMCP

Hvad det er#

PostStack er en udvikler-først email-API. En API key, en suppression list, en contact graph - dækkende transaktional sends, marketing broadcasts og inbound parsing på det samme produkt.

Pitchen er den jeg ønskede nogen havde solgt mig i 2024: stop med at foregive de tre workloads er forskellige produkter. De deler en contact graph, de deler en deliverability historie, og gluet du skriver for at holde tre leverandører enige er altid den værste kode i din applikation.

Hvad det løser#

Et typisk lille team i 2026 køber stadig email i tre dele - Resend til transaktional, Mailchimp til broadcasts, Postmark til inbound - og skriver ~600 linjer TypeScript og en Postgres tabel for at holde dem synkroniseret. PostStack kollapser det integration lag til nul.

Når seamene forsvinder:

  • Suppression lists forbliver konsistente på tværs af transaktional og marketing.

  • Inbound replies ruterer tilbage til den samme contact post uden en webhook worker du skrev på en fredag.

  • Workflows fyrer på rigtige events fra den samme platform, ikke en downstream cron der poller tre kilder.

  • Regningen er en regning, kontrakten er en kontrakt, revisoren er gladere.

Hvad jeg nægtede at give efter på#

En end-to-end typed SDK. Ikke "vi genererede types.d.ts fra OpenAPI og håbede". TypeScript clienten formede API designet. Errors er typed unions. Request og response bodies deler Zod schemas med serveren.

En transparent test mode. Pass en header, senden simuleres end-to-end - webhooks fyrer, tracking events emitter, adresser validerer, templates render, intet forlader platformen, intet bliver faktureret. Din CI kører mod den rigtige API surface.

Deliverability arbejde der ikke er et marketing slide. SPF, DKIM, DMARC alignment, DNSBL monitoring, bounce/complaint loop indtagelse, warm-up scheduling. De uglommerøse dele der bestemmer om din transaktional mail lander i inbox.

En MCP server. PostStack skiberer en Model Context Protocol server sammen med SDK, så Claude Code kan sende mail, inspicere deliverability, replay events, og gå gennem diagnostikker uden jeg rører dashboard.

Hvordan det er bygget#

Bun runtime, Hono på API edge, Postgres til contact graph + event log, Redis + BullMQ til queue arbejde, NATS til inbound parsing fan-out. Alt kører på hoststack.dev i eu-central-1.

Hele grejen er dogfooded - hver transaktional send micci.dk behøver (contact form replies, admin notifications, password rotations) går gennem PostStack.

Hvor der skal læses mere#

Casen for konsolidering, plus de fire non-negotiables i fuld, bor i blog indlægget Den email-API jeg ville have bygget, men ikke kunne købe.

Andre projekter