finds.dev← search

// the find

kentcdodds/kentcdodds.com

★ 2,497 · TypeScript · NOASSERTION · updated Oct 2026

My personal website

Kent C. Dodds' personal site, built with React Router v7 and Vite and deployed to Cloudflare Workers with D1, KV, and R2. It is most useful as a reference for a large content site running on Cloudflare's stack, not as a template to fork, because the podcast, call-in, and video pipelines are specific to Kent's work.

- Each service has its own wrangler config and deploy workflow under .github/workflows (the site, search, OAuth, and call-in audio workers), so they can ship independently.

- Search is a separate worker with its own D1 schema, fed by a lexical search artifact that the indexing scripts in other/semantic-search build ahead of time. The site worker does not query raw content at request time.

- Schema changes are flat SQL files in services/site/migrations, read through @remix-run/data-table. There is no ORM layer, so a migration shows up in review as plain SQL.

- AGENTS.md and docs/agents/ spell out contributor and agent conventions (bugfix workflow, testing principles, data-table usage). The pre-commit and pre-push hooks enforce lint, typecheck, build, and tests.

- The setup is heavy for anyone who just wants to read or run it. It needs Node 26, the setup script resets a local Miniflare D1 and installs Playwright browsers, and the pre-push hook runs the full test:all suite.

- A lot of the repo is tied to one person's business: podcast and call-in recording, YouTube and transcript indexing, and a NAS-hosted indexer under other/nas. The README does not say which parts are meant to be reused, so pulling out the pattern is real work.

- The GitHub topics still list prisma and sqlite, while the README describes D1 and flat SQL migrations. The metadata is stale, so it is not a reliable guide to what the stack is.

- The project is GPL 3.0. Anyone wanting to lift code into a closed-source product takes on those terms.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →