case file 02 · postcards, mailed for real

PetalPost.

Design a card, tie a note, hit send — and a real 4×6 art postcard drops in someone's mailbox a few days later.

live · petalpost.io Send a card ↗
§ what it is

Real mail, without the errand.

PetalPost is a Design → Address → Review → Mail flow that ends with an actual postcard in the actual post. You build the card in the browser, write your note, punch in an address, pay, and it's printed and mailed for you.

It grew out of a little app I made for one person — nazneen.io, where you assemble a bouquet from SVG stems and it lands in her inbox as an email. PetalPost is that same warmth, but on paper, for anyone.

The interesting engineering is the trust boundary: the artwork is rendered in your browser and rasterized to a PNG, addresses are verified before a card can charge, and fulfillment only fires from a verified payment webhook — so nothing gets mailed by accident.

No accounts, no database of you. Your order gets an unguessable tracking link and that's the only credential — anonymous by design.

01

Design in-browser

Pick the art, choose a wrap, tie a handwritten-style note. The card renders live — what you see is what gets printed.

02

Verified addresses

Recipient addresses are checked before you're ever charged, so a typo doesn't turn into a card mailed into the void.

03

Anonymous tracking

Every order gets a private tracking link. Watch it move from printed to in-transit to delivered — no login, no account.

§ my musings

Why I built it.

Everyone loves getting real mail. Almost nobody sends it, because the errand is annoying. PetalPost deletes the errand.

I like software that turns a warm impulse into a finished thing in under two minutes. You think "I should send my mom a card," and the friction usually wins. This is my attempt to let the impulse win instead.

It's also a fun little full-stack puzzle: browser-side rendering, physical-mail APIs, payments, and webhooks all have to agree before a real object gets manufactured and shipped. Getting that chain to be boringly reliable was the whole game.

§ take it for a spin

Send a card in about two minutes.

✉ live app petalpost.io

No demo login needed — it's a public app. You only pay when you actually mail something, so poking around the designer is free.

  1. Open petalpost.io and start on the Design step.
  2. Build a card and write a note — the preview is exactly what prints.
  3. Add an address; it's verified live before anything is charged.
  4. Review the front and back, then mail it. You'll get a private tracking link by email.
§ under the hood
Node + Express React (CDN, no build) Lob · physical mail API Stripe · payments + webhooks Postmark · email Tigris · object storage Fly.io · scale-to-zero
← prev case fileWeave next case file →PicPost