Projects

Things I've built, mostly open source.

Most of the plumbing behind my workflow lives here: NixOS roles, Home Manager modules, Neovim, and scripts.

  • NixOS
  • Neovim
  • Emacs
  • Nix
  • Lua
  • Shell

Turn TypeScript data models into diagrams with automatic layout, then rearrange nodes and export to SVG.

  • Web
  • Data modeling
  • TypeScript
  • React

My personal document syntax has a Tree-sitter grammar, a Go library, and Neovim support.

  • Tree-sitter
  • Neovim
  • Go
  • TypeScript
  • Lua
  • C++

Write TypeScript automations in global or project-local repos; parameters become interactive prompts.

  • CLI
  • Automation
  • TypeScript
  • Node.js

Nested Zod schemas type event names and payloads; wildcard payloads are unknown, and validation is optional.

  • Events
  • Zod
  • TypeScript

benchmate auto-selects timers and batch sizes, then returns or prints JavaScript benchmark metrics.

  • Benchmarking
  • Performance
  • TypeScript

An experimental proxy-based React store supports direct mutation and avoids unrelated rerenders with selectors.

  • State management
  • React
  • TypeScript