Skip to main content Skip to navigation

Projects

Agent systems, developer tools, languages and runtimes, plus keyboard firmware and a homelab. 32 projects in 7 groups.

32 projects shown: All projects

All projects

JupyterLite notebook with the Agent panel in Propose mode. An agent's proposed edit is shown as a red and green diff under the cell, with Accept and Deny buttons, waiting for review.

Browser agents & WebMCP

JupyterLite WebMCP

OpenAI WebMCP Challenge Winner

Winning OpenAI WebMCP Challenge entry: a JupyterLab extension giving a browser agent 22 tools over your live notebook, kernel, selection and review threads.

  • WebMCP
  • JupyterLab
  • TypeScript
  • JupyterLite
  • +4
  • +5
Video thumbnail reading "Your API docs are the connector" over Swagger UI with an agent chat beside it.

Browser agents & WebMCP

Swagger UI WebMCP

OpenAI WebMCP Challenge entry: a Swagger UI plugin that turns any OpenAPI docs page into agent tools, with access the page and the person can only tighten.

  • WebMCP
  • TypeScript
  • Swagger UI
  • +4
  • +4
Video thumbnail reading "The agent fills the form. You press the button." over a pre-filled candidate sign-up form.

Browser agents & WebMCP

Careers WebMCP

OpenAI WebMCP Challenge entry: a careers site with 18 WebMCP tools. The agent searches, navigates and fills in your application; only you can press Submit.

  • WebMCP
  • TypeScript
  • Next.js
  • +3
  • +3
Video thumbnail reading "The agent proposes. You hit accept." over a Strudel editor showing an agent proposal diff.

Browser agents & WebMCP

Strudel WebMCP

OpenAI WebMCP Challenge entry: the Strudel live-coding REPL with 13 WebMCP tools, so an agent can edit, propose and listen to the same buffer you perform from.

  • WebMCP
  • TypeScript
  • Strudel
  • +4
  • +4
Storybook with a WebMCP panel listing the story tools an agent can call and its recent calls.

Browser agents & WebMCP

Storybook WebMCP

A Storybook addon that compiles live stories, controls and globals into WebMCP tools. Built and deployed for the WebMCP Challenge, then deliberately not submitted.

  • WebMCP
  • TypeScript
  • Storybook
  • +1
  • +1
The Ticketmaster terminal UI showing a ticket ready for review, with Accept and Reject options and the worker's verified test result.

Agent systems & developer tools

Ticketmaster

Rust coding-agent runtime: chat in the terminal, hand work to background workers as tickets, review and accept it. State is an append-only event log.

  • Rust
  • Tokio
  • axum
  • SQLite
  • +4
  • +5
The Glassy terminal showing a directory listing and syntax-highlighted Rust source.

Agent systems & developer tools

Glassy

A lean GPU terminal emulator in Rust: wgpu instanced rendering, damage-only redraws, no idle frames, 60 themes, and CRT/glass effects. Built for Claude Code.

  • Rust
  • wgpu
  • WGSL
  • winit
  • +4
  • +5
rssd docs site: "The filesystem is the API", a daemon that turns RSS and Atom feeds into a directory tree.

Agent systems & developer tools

rssd

A file-based RSS daemon: feeds become a tree of atomically written XML entries with revision history, a tail-able JSONL event log, and a vim-style TUI.

  • Python
  • uv
  • lxml
  • +4
  • +4
Git Why docs site: "Finds the history that explains the code", with an orange magnifying glass over a line of commits.

Agent systems & developer tools

Git Why

git blame tells you who changed the code; git why finds the commit that explains it. Local hybrid search over Git history, benchmarked honestly.

  • TypeScript
  • Node.js
  • Git
  • +4
  • +4
Terminal output of darwin's B1 benchmark table: vanilla and darwin both resolve 22 of 30 tasks, with darwin using 24% fewer tokens, 43% less time and 27% less cost.

Agent systems & developer tools

darwin

Work in progress: a self-improving layer for coding-agent harnesses (memory, dream, distill), shipped first as an opencode plugin, and benchmarked against itself on SWE-bench.

  • TypeScript
  • Bun
  • SQLite
  • +4
  • +4
K9k inspector showing a Pod's raw JSON object with syntax highlighting beside the live resource table.

Agent systems & developer tools

K9k

A native macOS Kubernetes manager with K9s-style depth: SwiftUI app, bundled Go client-go helper, live watch, exec, port-forward, Helm, and RBAC checks.

  • Swift
  • SwiftUI
  • Go
  • +5
  • +5
Morbstack's native macOS Containers window with 38 containers, a Compose project and the Kubernetes containers grouped, and the Statistics tab open for a running container.

Agent systems & developer tools

Morbstack

A native macOS Docker Desktop replacement: stock upstream dockerd in one Virtualization.framework VM, a Rust PID 1, and a SwiftUI app. Pre-release.

  • Swift
  • SwiftUI
  • Rust
  • +5
  • +5
Daggler grading an AI triage-agent workflow F for security, flagging untrusted issue text passed into the agent's prompt and agent output being executed.

Agent systems & developer tools

Daggler

A semantic IDE for GitHub Actions: typed IR, live job graph, five validation layers, and rules that catch prompt injection into AI agents.

  • TypeScript
  • Next.js
  • React
  • +4
  • +4
The Linear Lens docs site: "Linear issues, right in your editor", with the extension's blue striped icon and four feature cards for links, live metadata, the Problems panel and opt-in editing.

Agent systems & developer tools

Linear Lens

A VS Code and Cursor extension that makes Linear issue IDs like ENG-123 clickable and hoverable in comments, Markdown, commit messages and your branch name.

  • TypeScript
  • VS Code Extension API
  • Linear GraphQL API
  • +2
  • +2
Terminal running patchrun on a sample repo: the command exited 0, two files changed with 4 insertions and 4 deletions, and a menu offers apply, save, view, keep worktree or discard.

Agent systems & developer tools

patchrun

Run any command in a disposable Git worktree and get back the patch it would have made, then apply, save, or discard it. A small Go CLI.

  • Go
  • Git
  • PTY
  • +1
  • +1

Agent systems & developer tools

AllieCode

A Go port of an existing TypeScript coding-agent CLI, rebuilt as a provider-agnostic terminal agent. Broad baseline in place; most subsystems are still marked partial.

  • Go
  • Bubble Tea
  • MCP
  • +2
  • +2

Agent systems & developer tools

Anvil

A native SwiftUI workspace for agent-driven development on macOS: tickets, agent sessions, review and shipping in one app. Ambitious, mid-rebuild, and in need of some TLC.

  • Swift
  • SwiftUI
  • Swift Packages
  • +3
  • +3
Shoal landing page: "Structure all the way down", beside a terminal showing typed values, unit arithmetic and a structured git status table.

Languages & runtimes

Shoal

Agent-first structured shell in Rust: typed values and dot-chains instead of pipes, hash-locked tool resolution, OS sandboxing, and an MCP agent surface.

  • Rust
  • SQLite
  • BLAKE3
  • +5
  • +5
The Lumen browser playground running a pattern-matching program compiled to WebAssembly; the terminal prints "zero, one, many".

Languages & runtimes

Lumen

Markdown-native, statically typed language in Rust for AI agent workflows: typed tools, capability grants, effect rows, deterministic mode, WASM playground.

  • Rust
  • Cranelift
  • WebAssembly
  • +3
  • +3
The puml studio editor with PlantUML class source on the left and the SVG class diagram, rendered by the in-browser WASM engine, on the right.

Languages & runtimes

puml

PlantUML-compatible diagrams without Java or Graphviz: a Rust compiler with its own layout engine, emitting SVG/PNG/PDF from a CLI, LSP and in-browser WASM.

  • Rust
  • WebAssembly
  • winnow
  • resvg
  • +4
  • +5
AFTERLIFE's Time Sculpture: 165 recorded generations of the opening scene stacked in 3D, with each glider's path showing as an inclined beam.

Simulations & creative coding

AFTERLIFE

Conway's Life with a time machine: scrub history, fork alternate futures, sculpt time in 3D, and play in deterministic lockstep across tabs.

  • TypeScript
  • React
  • three.js
  • Canvas 2D
  • +4
  • +5
Spinnerr playing a local test track: a green generative vinyl record with the tone arm down, a large clock, the track title and progress bar, and two sample calendar events.

Simulations & creative coding

Spinnerr

An ambient music player for a second screen, built around a generative vinyl record. Plays Audius, SoundCloud, radio and Internet Archive from one search, plus your own files.

  • Next.js
  • React
  • TypeScript
  • +5
  • +5
The Patches terminal client: a chronological home feed of three posts, connected to patches-social.fly.dev, with keyboard hints.

Social systems

Patches

A chronological social network you use from the terminal: Ink/React TUI, web PWA peer, E2EE DMs, federation lab, and user-side moderation.

  • TypeScript
  • Ink
  • React
  • NestJS
  • +4
  • +5
GitHub Stories landing page: "Stories for GitHub. Yes, those Stories.", with links to the demo, extension and CLI.

Social systems

GitHub Stories

24-hour Stories for GitHub: rings on avatars via a browser extension, and a gh CLI that draws them (video too) right in your terminal.

  • Go
  • Bubble Tea
  • TypeScript
  • React
  • +4
  • +5
A CouchCircle room: a synced video on the stage and two avatars on a couch in an illustrated living room.

Social systems

CouchCircle

A cozy real-time watch party: synced YouTube, direct video, and P2P screen share in a shared living room with a queue and one remote.

  • TypeScript
  • Next.js
  • React
  • +5
  • +5
A dark SVG drawing of the navigation layer of a split keyboard: number keys across the top, Home, Page Down, Page Up and End on the left, arrow keys on the right, and faded ghost keys where the layer is transparent.

Hardware & homelab

Keyboard Layout Visualizer

A Raycast extension that reads QMK/Vial and ZMK keymaps straight off the board over USB and draws every layer as SVG, with reverse key search.

  • TypeScript
  • React
  • Raycast API
  • +4
  • +4
Jellyseerr request page from Allison's self-hosted media server, Allie Cat Cinema

Hardware & homelab

Homelab Media Box on Hetzner (16TB)

A 16TB Hetzner auction server running my family's media library: Jellyfin and Plex with Quick Sync transcoding, the *arr apps, Caddy and Portainer in Docker.

  • Docker
  • Portainer
  • Caddy
  • +7
  • +7
A Lily58 split keyboard in a pink case with grey and navy keycaps, a red trackpoint on the left half and a square touchpad module between the halves

Hardware & homelab

Lily58 HolyKeebs QMK Fork

A QMK fork that brings Vial to the HolyKeebs Lily58 tree, keeps its trackball, touchpad and trackpoint drivers, and ships prebuilt firmware built in CI.

  • C
  • QMK
  • Vial
  • +1
  • +1
A wireless Sofle split keyboard with rainbow RGB backlighting and a rotary knob, next to a small dongle screen showing battery levels for both halves

Hardware & homelab

AllieCatKeeb Sofle (ZMK Firmware)

ZMK firmware for my wireless Eyelash Sofle split: nice!nano controllers, OLED and RGB support, a dongle variant, and prebuilt firmware from GitHub Actions.

  • ZMK
  • Bluetooth
  • NRF52
  • +4
  • +4
Assistarr home hero: "Your media, all in one place." with Start a chat, Discover and Monitor buttons, and four stat cards for services online, library size, active downloads and AI signals.

Earlier work

Assistarr

An AI assistant for a self-hosted media stack: ask in plain English and it drives Jellyfin, Radarr, Sonarr, Jellyseerr and qBittorrent from a web chat UI.

  • TypeScript
  • Next.js
  • React
  • +7
  • +7
LegalEase AI search page in the dark pink theme, with the hybrid search box and filters for cases, types and levels

Earlier work

LegalEase AI

Legal discovery search for messy evidence on Firebase: Nuxt 4 dashboard, Genkit flows, Gemini summaries, Chirp 3 transcription, and hybrid search in Qdrant Cloud.

  • Nuxt
  • Vue
  • TypeScript
  • +5
  • +5
Terminal showing recipe-bot's --help output: it processes Instagram post URLs to generate recipes, with --debug and --local options.

Earlier work

Recipe Bot

A 2024 command-line MVP that turns Instagram cooking videos into Markdown recipes: download, transcribe with Whisper, check it is actually a recipe, then write it up with GPT.

  • Python
  • Instaloader
  • FFmpeg
  • +5
  • +5

Got a project in mind?

I'm always up for a good collaboration, a hackathon, or a long thread about agent tooling.