Staff Software Engineer @sanity-io
debounce-promise. Create a debounced version of a promise returning function
240cut-release. A tool that helps you make faster npm releases
107weigh. A command line tool to check the bundle size of one or more browser compatible npm modules
59route-pattern. Generic express/sinatra/backbone-style route pattern matching
38repeat.js. [Not maintained]
31nano-pubsub. Tiny publish/subscribe
16promise-latest. Prevent out-of-order results from a promise returning function
15sproutpy. 🪴 Use a Raspberry PI Pico W to measure the soil moisture in your potted plants and store the measurements in the Sanity Content Cloud
12rxjs-exhaustmap-with-trailing. Like RxJS exhaustMap, but also includes the trailing value emitted from the source observable while waiting for the inner observable to complete
8react-es6-class. A proof of concept demonstrating server side React rendering with ECMAScript 6 class syntax
8git-upstream-watch. Get notified when one or more local git repos diverge from the upstream tracking branch
6usanity. MicroPython client for Sanity.io
6rx-vcr. 🎥 Record and replay an RxJS stream
6piixel. 🚥 Control WS281X / NeoPixel LEDs from a Raspberry Pi using Node.js and TypeScript
5quickreload. A tiny thing to make the browser reload css / js when files are changed on disk
4rxjs-mergemap-array. An RxJS map-operator that takes an observable of arrays as input and emits arrays where each element represents emissions from the projected observable
3sprig. Tiny, efficient DOM components
3staticr. Define a set of routes that can be either served dynamically or built to static files on disk
3json-reduce. Reduce any JSON value by visiting each node depth first
2airbrake-notice. Easy creation of Airbrake (or errbit) error notifications from Node.js or the browser
2prevent-default. A prevent-default decorator for DOM listeners
2transform-keys. Recursively transform object keys with a custom key transform strategy
2immerge. Immutable shallow merge of plain JavaScript objects, maintaining referential equality when possible
2threejs-node. Node/Browserify compatible version of Three.js
2dfrrd.js. An ultra-simple Deferred implementation for Node and the browser
2parcel-transformer-mdx-with-toc. An experimental Parcel v2 plugin for MDX that also exports the table of contents
2react-domcontentloaded. A React component that inserts WebReflection's DOMContentLoaded fix for async scripts
2is-auto-orienting. Feature detect whether the current browser is using the EXIF orientation when showing images
2circular-at. Access array items at any positive or negative index. If the index is out of bounds, it will be wrapped around the length of the array
2blacklistify. Protect files from accidental browserify bundling
1observable-callback. A small utility for simplified creation of callback functions that publishes the argument to an observable stream when called
1spaceship-linear. 🚀 Spaceship prompt section that shows the title of any issue associated with the current branch
1remon. A development tool that restarts your node.js server after code changes
1jade-runtime. A slightly modified version of Jade's runtime.js that works in a browser environment
1fu. Fu-templates combine the logic–less portability of Mustache with the terse utility of Haml.
1node. evented I/O for v8 javascript
1queryparams-coffee. A CoffeeScript port of QueryParams (http://github.com/simen/queryparams)
1rebundler. Simple reuse of cache from previous browserify builds. Supports cache invalidation without file watching.
1jquery-node. A super thin, super simple wrapper for jquery that works in node.js
1mocha. mocha - simple, flexible, fun javascript test framework for node.js & the browser. (BDD, TDD, QUnit styles via interfaces)
1deferred.js. A simple Promises/A implementation for Node and the browser
1play-pandoc. A play framework module that allows for custom output format from controller methods. Requires Pandoc to be installed.
1pilequire. Add multiple source transforms/transpilers for node.js source files
1