Browsing through my public code on Github is painful with all the forks and irrelevant repos.
Elsewhere on the internet
Open source code
If one of my repos isn't on this list it's because I don't think it's worth caring about, or because I wrote it since the last time I updated this list ^_^
To suggest changes, open pull requests here.
- shell-tag: a string template tag so you can write shell scripts with JS instead of bash
- lieutenant: command-line argument parser. For apps with git-like commands like "git stash pop" instead of traditional args you'd just use minimist for
- just-flatten: array flattening in the simplest code possible
- async-all: like async-each but for a map of functions instead of an array of functions
- mannish: implementation of the mediator pattern for your stateful JS apps
- weak-type-wizard: - enforce a schema for your objects, using casting functions you can define
- financial-arithmetic-functions: add/subtract/multiply functions for arbitrarily large numbers
- financial-arithmeticator: higher-level library for manipulating financial numbers without floating point math
- gate-keeper: guarantee that only one async job will run at a time
- sql-concat: dynamically build SQL queries with minimal fuss and zero magic
- sql-tagged-template-literal: use template strings to create SQL queries
- add-affiliate-querystring: add Amazon affiliate querystrings to any url
- read-write-lock: allow either a single writer or multiple readers to access a resource in a single process
- key-master: eliminate "add a default value to a map if it doesn't exist yet" boilerplate
- combine-arrays: so you can iterate over multiple arrays at once
- private-static-website: a static content server that protects content behind email validation
- private-github-website: hosts content from Github as a private site
- gzip-all: create
.gz files for all files matching a glob path
- generate-gedcom: serialize a geneology data structure into GEDCOM
For use with another library/service
Joi is a duck-type checker.
- joi-sql: generates type-checking functions based on your MySQL schema
Ractive is an excellent templating/DOM manipulation library.
- ractive-drag-and-drop-files: an event directive that fires an event when a file is dragged onto the element
- ractive-select-on-focus: a decorator that selects the contents of the input when it gains focus
- ractive-diff-generator: if you're using state management like Redux instead of interacting with the Ractive object directly, this tool tries to reclaim some of the performance downsides you would eventually incur
- ractive-lazyload-img: a decorator that loads images when they get near the viewport
If you value simplicity, Browserify is still an awesome module bundler.
tape is a simple test harness meant to run in browsers
Redux is everyone's favorite state library
LevelUP is an interface to key-value stores with a ton of storage backends
- levelup-cache: a loading cache that prioritizes returning a value as quickly as possible
- expire-unused-keys: a persistent "hey, you should probably refresh/expire this resource" library you can use to build higher-level caching libraries
Like the general interest libraries above, except I don't expect many people to care!
- pickering-majority-text-revelation: Wilbur Pickering's translation of Revelation, with notes, in a couple arrays
git clone --depth 1/
git pull without storing any git metadata locally
- tak-board: a visual representation of a Tak board, for the browser
- tak-game: Functions for managing the boardstate of a Tak game by feeding in a series of moves
- tak-move-helper: answers questions like "if you pick up a piece on this square, what other squares are valid to move to?"