Skip to main content

How it’s made

Every case study on this site is written in a CMS I designed and built for it. Here it is, open to explore: the real editor, reader and admin, running on a made-up case study.

It’s a sandbox. Change anything — it stays in your browser tab and is gone on reload. Nothing is saved, and no real work is shown here; that stays behind the Work passcode.

  1. 01The editorCase studies are written on the page itself, the way a doc editor works: no forms, no side panels.Try
    • Select text for the toolbar
    • Type / to insert any block
    • Drag a block by its ⋮⋮
    • Press ⌘/ for every shortcut
  2. 02The readerThe same story as a visitor meets it, through the same publishing step every real case study takes.Try
    • Chapters on the rail
    • Images open full size
    • Empty slots never reach the page
  3. 03The Work adminWhere case studies and prototypes are ordered, placed on the Work page and published.Try
    • Reorder the cards
    • Switch Private and Public
    • Open a story in the editor

Under the hood

Next.js, React and TypeScript; Tailwind CSS on a 24px rhythm; a Tiptap (ProseMirror) text editor saving to a small Markdown-like format; Postgres for drafts and published versions, every save kept; deployed on Vercel.