Projects

What I'm building now, what I built before, and a few things I made just for fun.

Now

08
  • Breakscale, a screenshot

    Breakscale

    1,645 GitHub stars
    SiteGitHub

    Build a system, load it until it breaks, and watch why. A system design simulator with a real discrete-event engine: 33 components, measured percentiles, retry storms that collapse on their own. 1,000+ GitHub stars in its first week, part of Vercel's Open Source Program and sponsored by Workers IO.

    • TypeScript
    • React
    • Simulation
    • Distributed Systems
  • Gyotaku

    337 GitHub stars
    SiteGitHub

    Search every screenshot you've ever taken by the text inside it. Native on Linux, macOS and Windows, fully offline: PaddleOCR, SQLite and GPUI, with 1-10ms search across 5,000+ screenshots.

    • Rust
    • GPUI
    • OCR
    • SQLite
  • Share your free time in someone else's time zone. Drag on a 24-hour clock, and a second clock shows the same hours in their zone. Send it as a short link that opens in the reader's own time zone, with no sign-up and no database: the whole schedule is packed into a link of about 23 characters.

    • Next.js
    • Cloudflare
    • Time zones
    • SaaS
  • GSoC 2026 contributor for Kdenlive, the open source video editor. Three effect widgets in the C++/Qt codebase, all merged and shipping in Kdenlive 26.08: per-channel Curves, a multi-stop gradient editor, and keyframe types for time remapping.

    • C++
    • Qt
    • GSoC
    • Open Source
  • A nanosecond-scale NASDAQ ITCH 5.0 feed handler and matching engine in C++20, with zero-copy parsing, a lock-free SPSC ring, busy-polled UDP multicast, and per-symbol order books. 38ns median parse on real market data, measured over loopback.

    • C++20
    • Low-latency
    • HFT
    • Systems
  • An embeddable real-time presence and multiplayer-cursor SDK. Drop it in and see who else is on the page, with live cursors and awareness, in a few lines of code.

    • TypeScript
    • SDK
    • WebSockets
    • Real-time
  • Version control for Kdenlive projects. Watches a project folder, commits every save to a local git repo without being asked, and describes what changed in plain English instead of a diff of MLT XML.

    • Rust
    • CLI
    • Kdenlive
    • Git
  • The LeetCode questions companies actually ask, ranked by frequency, as a static site generated straight from CSV data.

    • Rust
    • Static Site
    • DSA

Past

30
  • Makes a cheap Bluetooth LED strip follow the desktop wallpaper palette. Holds the connection open like the phone app does, so a colour change lands in 0.12 seconds. Protocol from UniLED; the Linux side is mine.

    • Python
    • Bluetooth
    • Linux
    • systemd
  • Supersampled Wayland screenshots. Spins up a temporary high-resolution phantom output, captures it, tears it down.

    • Wayland
    • Linux
    • CLI
  • A gateway that gives every AI answer a second look before the user acts on it. Built for the Accenture Innovation Challenge 2026.

    • TypeScript
    • AI
    • Gateway
  • Read-only MCP server for Kubernetes service-mesh introspection in Go. Three tools over stdio and streamable HTTP, built as groundwork for Kmesh's LFX MCP server project.

    • Go
    • Kubernetes
    • MCP
  • GitHub contribution graph as a desktop widget for Noctalia Shell.

    • QML
    • Noctalia
    • Wayland
  • Your README, on Autopilot.

    • Next.js
    • TypeScript
    • AI
    • GitHub API
  • A recipe manager that helps you save, organize, and discover recipes from around the web, all in one place.

    • Next.js
    • TypeScript
    • Postgres
  • A real-time GPU compute particle simulator in C++20 and Vulkan. Millions of particles, N-body gravity and boids, audio reactive.

    • C++20
    • Vulkan
    • GPU Compute
    • Graphics

Just for fun

05

Weird, fast-built side projects, shipped for laughs, learning, and the love of building.

  • Self-hosted meme host for a friend group. Click to copy, paste in Discord, it renders inline. Runs free on Cloudflare.

    • Cloudflare
    • Discord
    • Fun
  • It's 2am and I built an API. A "REST API" that vibe-checks anything you send it — query, decision, your situationship — and returns a score, a confidence level, and a recommendation from the vibe council.

    • Cloudflare Workers
    • API
    • Fun
  • Wayland was the one place obs-zoom-to-mouse refused to work, so I forked it. A Lua OBS script that zooms a PipeWire screen capture to follow your cursor on Hyprland, because screen recordings deserve to actually show what you're pointing at.

    • Lua
    • OBS
    • Wayland
    • Hyprland
  • A native GTK4 desktop app for recording a daily video or audio diary entry, which uploads itself straight to YouTube as a private video. Future me, this is for you.

    • Python
    • GTK4
    • YouTube API
  • A C++ program that turns images into colored ASCII art, printed straight to your terminal. Built mostly to relearn pixels, luminance, and why std::cout is slower than you'd hope.

    • C++
    • stb_image
    • CLI