Dad Humor
A dad-joke web app, deliberately small, on a voice documented tightly enough that a model lands the register reliably.

Problem
Most brand voice is mush. "Professional but approachable" describes almost any business and instructs almost nothing. A dad joke will not let you get away with that: a touch too clever and nobody groans, a touch too rude and it is a different kind of joke. The register is narrow, so it is a hard test of whether a voice has actually been pinned down.
What we built
A web app that generates dad jokes on demand, on top of a documented register system. The default register is PG-with-attitude: cheeky, groan-worthy, never mean. An opt-in Spicy register runs the same engine with the safety catch off. Around them sit the rules that stop it drifting - slang flagged inline for sign-off so nothing modern slips in unchecked, US spelling for the brand name and UK English everywhere else, and a clear line on what the brand never does.
Stack
Next.js on Vercel. The stack is not the interesting part: the voice layer underneath is the same documented layer that forms the first stage of an AI Blueprint.
Timeframe
A weekend build.
What it does now
Live at dadhumor.app, generating jokes on demand in both registers. It is the voice-layer proof piece: if the method holds for dad jokes, it holds for a professional services firm.