(001)

Lettrr

Private Social Memory & Slow Correspondence Platform

visit live site ↗︎
Role
Full-Stack Engineer, Product Owner
Year
2026
Stack
Next.js 16 (App Router)React 19TypeScriptTailwind CSSshadcn/uiDrizzle ORMPostgreSQL (Supabase)Cloudflare R2Better AuthUpstash RedisResendPostHogSentry
Lettrr — Private Social Memory & Slow Correspondence Platform

(002)

Overview

Lettrr is a private social memory platform that preserves personal moments and sends them as wax-sealed correspondence to the people you love.

I built the product end-to-end around the core loop of Capture → Curate → Personalize → Mail → Receive → Revisit, replacing public feeds with private one-to-one correspondence.

(003)

The Challenge

Modern communication is public and algorithmic, and personal photos stay buried in camera rolls with no deliberate way to revisit or send them.

The product needed to capture the tactile intimacy and anticipation of physical stationery: wax seals, custom paper stocks, unhurried delivery, and permanent preservation. It also had to hold modern web performance, rigorous privacy, and zero server egress costs on serverless infrastructure.

(004)

What I Built

I designed and developed features across the entire application spanning:

  • Interactive 6-step manuscript composer (recipient selection, keeps curation, visual arrangement, letterpress writing, preview, and sealing ritual)
  • Aesthetic unsealing ceremony with interactive wax seals, botanical/monogram dies, and tactile paper textures
  • Private Keeps sanctuary with client-side image compression and direct-to-R2 presigned upload pipelines
  • Cryptographic claim link dispatch system with 192-bit token generation and single-use claim mechanics
  • Transactional email dispatch via Resend with verified DKIM/SPF domain authentication
  • Distributed rate limiting and abuse defense with Upstash Redis on public and authentication endpoints
  • Delivered Gift lifecycle model preserving recipient correspondence upon account erasure (ADR 0009)
  • Privacy-preserving crash monitoring and funnel telemetry via Sentry and PostHog
  • Next.js 16 performance optimizations using Partial Prerendering (PPR), React Server Components, and connection pooling

I worked across both frontend and backend, wiring React/Tailwind interfaces and animations to Drizzle ORM data models, Cloudflare R2 storage, Supabase PostgreSQL, and a hardened Vercel deployment.

(005)

Architecture & Engineering

A central focus was building production-grade infrastructure on managed serverless services without vendor lock-in or compute limits.

I implemented a direct-to-storage media pipeline using Cloudflare R2 presigned URLs, bypassing Vercel's 4.5MB serverless body size limitation, and configured Supavisor transaction pooling on port 6543 to eliminate connection exhaustion across ephemeral serverless instances.

To protect correspondence, I added application-layer authorization with UUIDv7 identifiers, claim links that work exactly once, and an automated heartbeat that keeps the free-tier database from idling.

(006)

Outcome

The result is a production-hardened platform that turns a physical correspondence ritual into a digital one, with sub-5ms co-located database latency and zero egress fees.

My work on Lettrr covered both the interface craft and the cloud architecture behind it, down to backend security, data privacy, and serverless reliability.

Thanks for reading.

get in touch ↗︎