Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Projects I work on.



I work on a lot of different projects. They are all in different stages and it can be hard to keep track of them.

This repo documents the projects that I work on in my free time.

Overall goal

My goal is to create tools for journalism, community organizing, music, and games.

Documentation tools

I'm spending as much time as I can on documentation. Here are some documentation-focused tools I've been working on:

  • devo – a command-line tool for creating files like,, code of conduct, and other repetitive code maintenance tasks.
  • – create documentation sites from a single markdown file
  • markdown-reader – create a stream of markdown files
  • rewrite-markdown-urls – turn relative github urls into urls appropriate for a static site
  • minidocs – build a simple site for your documentation

Journalism & public-interest technology projects

Tools & APIs focused on Seattle, WA.

Documenting open data, civic tech, and civic engagement in the Pacific Northwest.

Seattle LocalWiki

A wiki for Seattle, WA.

Large open source projects


A command-line tool to track daily notes and todos.


Host static sites with automatic SSL via Let's Encrypt.


Tools for authentication and authorization.


Tools for working with data.


Create educational workshops as websites and desktop apps.

Small modules

I like writing JavaScript, CSS, and HTML.

Here are a few of my favorite small modules I've created that don't fit in one of the above sections.

  • directory-command – Create a command-line tool using directory structure to define nested subcommands
  • args-and-flags – parse and validate args and flags for commandline tools
  • send-action – tiny module for managing state
  • find-repositories Find all the git repositories in a directory
  • folder-reader Create a stream that outputs the contents of a set of directories recursively
  • interactive-sandbox Create editable, interactive code examples for the browser that bundle dependencies from npm
  • create-html – function/cli for creating contents of index.html file
  • level-model – higher-level module for creating content models with leveldb
  • namespace-emitter – namespaced event emitter
  • gameloop – simple game loop
  • load-images – load images in the browser
  • sprite-2d – render 2d sprites

I have quite a few more modules on npm.

Demos & examples

I enjoy creating demos! I learned how to write code in part by creating examples and writing about the process of creating them.

Here are some of the experiments, examples, and demos I've created over the years.


Interested in contributing to one of these projects? Awesome! Get involved in the project-specific issue queues, chat rooms, or other project-specific forums.

Have ideas or fixes for this repository? Please read the contributing guidelines first.


Help keep this project open and inclusive. Please read and follow the code of conduct.

See also



πŸ• Projects I work on



No releases published


No packages published