Distill

A visual AI pipeline I built for myself

A canvas where sources connect to AI transforms, and everything updates when inputs change.

Distill

Type

Solo side project

Timeline

Jan–Feb 2026

Stack

Next.js, React Flow, Vercel AI SDK

The Problem

My thinking is messy by nature. I fall into research rabbit holes. Hundreds of LLM conversations, notes scattered across Notion, Figma files with dozens of variations. That chaos is actually how I explore. It works.

Where it breaks is convergence. When I need to turn all of that into something (a brief, a pitch, an outline), the process is painful. Copy-paste from five sources, re-read everything, compose manually. The material is all there, but there’s no way to structure it and keep it connected.

LLMs help, but conversations drift. The context window fills up with tangents, and if a source changes, you start over. What’s missing isn’t memory. It’s a way to organize the chaos into something that reacts when your inputs evolve.

The Vision

My thinking isn’t linear. I’ll start with one thread, branch into three, circle back, merge ideas from different sources. A list can’t hold that shape. A chat thread definitely can’t.

I wanted a canvas. Drop your sources as nodes. Connect them to AI transforms: summarize, extract, reformat, compare. Chain transforms together. When you update a source, everything downstream re-runs automatically.

Figma meets visual programming for documents.

Source → Transform → Output. That’s it. Works for a quick one-off or a multi-step pipeline you come back to.

Try editing

The Build

This was my first real project with Claude Code. I went from Pro to Max 5 to Max 20 in the same day. Hooked immediately. The speed of iteration changed everything: an idea in the morning, a working implementation by afternoon, a completely different approach the next day. No dependencies, no coordination, just build.

But fast doesn’t mean smooth. I hit every trap that comes with AI-assisted development.

What I killed

The first version put everything in drawers. Click a node, see its details in a side panel. It felt natural at first, but it broke the spatial metaphor. The canvas is the interface, and pulling attention away from it defeats the purpose. I ripped it all out and put everything back on the canvas.

Canvas-only approach — everything lives on the canvas
Drawer-based inspect UX — details in side panel
Drawers AI Slop
Polished Canvas
Left: what AI slop without steering looks like

Then there was the feature creep. Claude Code makes features feel free to build, so I kept adding things: complex node types, advanced operations, features that looked impressive but nobody needed, including me. I had to learn that cheap to build isn’t cheap to maintain, and step back to the essentials: three node types, one canvas, one flow.

The pivot was about taste. Resisting the “it’s free with Claude Code” trap. Building less, but building right.

The Details

Auto-run engine

Edit a source and watch everything downstream update. Debounce → topological sort → parallel cascade. No manual re-runs.

The designer's role is shifting from pixel-pusher to system thinker. When AI can generate interfaces, the value moves upstream.

What matters now:

- Framing the right problem

- Designing the system, not the screen

- Crafting interactions that feel intentional

Summarize
Key Points

Cmd+K command palette

Fuzzy search, keyboard-first. Add nodes, run transforms, navigate without touching the mouse.

Smart paste

Paste a URL, markdown, table, image, or Notion link. Distill auto-detects the type and creates the right node.

Transform recipes

Pre-built transforms for common operations: summarize, extract key points, rewrite for a different audience, compare sources.

Full Circle

I used Distill to build this portfolio. Notes, links, inspiration, all fed into the canvas, transformed into outlines, then into prompts for Claude Code. One source of truth, multiple outputs. A living document that stays up to date as the thinking evolves.

I’ve learned that building with AI still means I’m the one deciding what matters. Claude Code writes the code, I shape what comes back. Most of the work is still editing and cutting.

Built an entire tool with AI. Can confirm.

Ben Orenstein
Ben Orenstein@r00k

Still kinda hard to build good software, tbh.

It’s faster! And more fun.

But still hard.

Brian Lovin
Brian Lovin@brian_lovin

The last 10% is still the last 90%.

Everyone’s vibe coding now, and the building part has never been easier. What hasn’t changed is knowing when to stop adding things and when to throw something away. That’s still the hard part.