home

Projects

Things I build and keep tending: apps that run their intelligence on your own hardware, and the tools I needed along the way.

3 products · 2 sites · 3 labs · 1 upstream fix · 6 small things

products

  1. 01

    ideAI

    A mirror with memory

    A personal AI operating system. Journal, reflect, understand patterns in your thinking.

    Swift · SwiftUI · MLX · SwiftData · Foundation Models · Cloudflare Workers

    Read the build notes
  2. 02

    CluTerm

    Your machines, as one encrypted computer

    Every machine you own, opened in a browser as one end-to-end encrypted computer. Formerly CludCode.

    Rust · Next.js · WebRTC · WebSocket · Electron · Stripe · Supabase

    Read the build notes
  3. 03

    ChorusReader

    Every character gets a voice

    Multi-voice audiobook narration with on-device TTS — and a bookstore built in.

    Swift · MLX · ChorusTTS · AVFoundation

    Read the build notes

upstream

merged withastro/astro #15728

fix(transitions): prevent WebGL context loss on persist canvas during body swap

Problem
Safari loses WebGL2 context when canvas elements are briefly detached from the DOM during View Transitions navigation.
Fix
Lift persist elements to <html> before body swap so they're never detached. Integrated moveBefore() API (Chrome 133+) for zero-detachment atomic moves.
Impact
Merged into Astro core (5M+ weekly npm downloads). First integration of moveBefore() into Astro's View Transitions system.

everything else