A pile of things I've built for personal use.
Help yourself — but no guarantees. Find me on LinkedIn.
Copy-Paste
Copy-paste content from my phone to the laptop. Open it on the PC, scan the QR code on the phone, and the two browsers stay in sync. Data clears after a few hours of inactivity.
// WIP
● Streaming Markdown
Jul 12, 2026An incremental, append-only markdown renderer for LLM output with swappable React and Lit renderers. Committed blocks are parsed and rendered exactly once; only the live tail re-parses each frame.
● Inkwell
Jun 14, 2026A hand-built infinite canvas. Pan, zoom, and draw with pen, shapes, and an eraser — no libraries, just the raw 2D context.
● Enchanted Leaf
May 31, 2026A Jupyter-style notebook exploring botanical data from a magical forest. Click Run to simulate cell execution.
● data-chat
May 18, 2026Agentic chat for data analysis. Ask questions about 48K IMDB movies — Claude writes SQL, builds a dependency graph of named views, and lets you refresh any computation for a different genre or year range.
● minimal shell
May 10, 2026A POSIX shell interpreter compiled to WebAssembly, running entirely in your browser. Interactive terminal with a virtual filesystem.
● ptui
May 9, 2026A terminal-style UI component library. Monospace, dark-first, zero dependencies.
● GSAP Grid
May 8, 2026A full-screen grid of boxes animated with GSAP. Hover for a proximity glow, click to send a ripple wave across the canvas.
● Story Time
May 4, 2026A collaborative campfire story builder. You write, pause, and the narrator picks up the thread.