← All work
SHEET 04 / 04

Hard Pills to Swallow

A pop-art blog its writer runs entirely herself.

Live in production, run end to end by a non-technical writer

  • SvelteKit
  • Supabase
  • Drizzle
  • Tailwind
  • Vercel

hardpillstoswallow.com ↗

The problem

A writer wanted a blog with real personality — and to run all of it herself, from drafting and scheduling to the mailing list, without calling a developer.

What I built

A pop-art public site with a featured post, ticker, RSS and generated share images, plus a full admin: a TipTap editor with autosave, scheduling and preview, comic-styled banners, a plain-language SEO panel, a media library, submissions, the mailing list, analytics and backups.

How it works

Publishing runs on database triggers, so “publish now” and scheduled posts behave the same way: the new-post email goes out exactly once through a Supabase edge function, and the post is shared to the writer’s linked X and Threads accounts. Social tokens and API keys are encrypted at rest.

Outcome

Live at hardpillstoswallow.com and run end to end by a non-technical writer — every post, schedule, email and social share happens without a developer in the loop.