Tools
Things I’ve made to scratch various itches
Hoot Docs Source
Hoot is a tool for dynamically generating any kind of textual content. It’s simple yet powerful. I’ve used it to generate HTML, CSS, LaTeX, SQL, and more. This website is powered by Hoot.
jsJot App Source
jsJot is a “calculator scratchpad” in the vein of Soulver, Numi, or Calca. But instead of inventing its own language or syntax, it’s just Javascript, with some creature comforts like auto-pairing brackets and parens. The core code is surprisingly simple, given how useful and convenient it is.
Brunicode App Source
Brunicode is a wicked-fast unicode browser and searcher. Think “wicked-fast” is an odd way to describe a tool that lists glyphs in a grid? Try rendering the full unicode range at once and watch your browser grind to a halt.
PDF BBQ App Source
PDF BBQ is a side-by-side playground for cooking up PDFs. I’ve used it to – for instance – make custom dot-grid and music staff paper, and to generate mazes to print out for my nephew. Powered by PDF-Lib.
Jif App Source
An elegant text editor for writing prose, in the spirit of iA Writer, but with some conveniences like auto-pairing quotes & parens, and “triggers” (like imap in vim). Configurable via JavaScript, with a built-in config editor.
Libraries
Some small packages I use to build other things
Zest Source
A single-header, simple unit testing library for C++
Fest Source
A single-header, simple unit testing library for C
SSVG Source
A wafer-thin wrapper around native SVGElement that makes creating and manipulating SVGs as painless as possible
Sex Source
An S-Expression parser that's as simple as it can possibly be while still being useful. Features include an API for custom readers, optional pretty printing. Written in C with no dependencies.There are more projects on my GitHub.