Repo Index
These are not all my projects. These are just the 78 projects that I enjoy the most and actively work to improve.
organized by topic
strings (4 projects)
package
- closestmatch: A Go library that does fuzzy matching on a set of strings. (go)
- pluck: A Go library to do regex-like searching on strings. (go)
- utfdecode: A simple library to decode a string that contains escaped UTF-16/32 characters into unescaped UTF-16. (go)
- documentsimilarity: Compute document similarity using simple methods. (go)
database (5 projects)
package
- jsonstore: Simple thread-safe in-memory JSON key-store with persistent backend. (go)
- sqlite3dump: A Golang library for dumping SQL text from sqlite. (go)
- fbdb: File based database, a keystore based on sqlite. (go)
- boltstore: A simple keystore written around Bolt. (go)
api
- boltdb-server: Server and Go package for connecting to BoltDB databases. (go)
social (2 projects)
website
cms (5 projects)
website
- rwtxt: A minimalist cms that allows easy writing and reading. (go)
- i.rwtxt: A version of rwtxt that stays encrypted on disk. (go)
- cowyo: A cms for single pages that can be encrypted and self-destructed. (go)
- offlinenotepad: An off-line first, secure, private notepad. (go)
- anonfiction: A CMS for reading and writing stories in a online magazine format. (go)
raspberry-pi (2 projects)
instruction
- raspberry-pi-turnkey: Instructions for adding a wifi hotspot to a Raspberry Pi to connected to any wifi network. (python)
- chickencam: Instructions to build a Raspberry Pi powered chicken cam. (go)
music (17 projects)
website
- teoperator: Make OP-1 and OP-Z drum and synth patches from any sound. (go)
- midi2midi: Use Chrome to connect two MIDI devices using <100 lines of Javascript. (javascript)
- carp: Browser-based Korg NTS-1 chord arpeggiator (carp) sequencer. (javascript)
- chords: Chord-progression discovery tool. (javascript)
instruction
- heartbpm: Instructions for creating a system of controlling electronic instruments with heart rate. (go)
- tape-synth: Instructions to create a cassette synthesizer. (go)
tool
- PIanoAI: A real-time piano playing AI. (go)
- playlistfromsong: A program that generates an offline playlist from a single song. (python)
- spotifydownload: A dependency-free Spotify playlist downloader. (go)
- miti: miti is a musical instrument textual interface. Basically, its MIDI, but with human-readable text. (go)
- BandGenerator: Band-name generator, one of my first programs ever written. (java)
package
- getsong: Download any song mp3 with no dependencies except ffmpeg. (go)
- logue: A collection of Korg logue patches for the NTS-1 (or possibly minilogue XD). (c)
- blndr: A quantized delay for monomes norns. (lua)
- clcks: A quantized repeater for monomes norns. (lua)
- oooooo: Set of digital tape loops monomes norns. (lua)
- barcode: A six-voice varispeed looper for monomes norns. (lua)
art (5 projects)
website
- poetry-generator: A poetry generating AI. (python)
- quotation-explorer: Explore and search over 120,000 quotations, with the click of a mouse . (go)
- topscience: Markov-chain generation of science article names. (go)
- painthex: A collection of scripts to turn a set of physical paints into hexadecimal color codes. (go)
- colorfade: Fade screens between colors in sync. (javascript)
math (2 projects)
package
- pake: PAKE library for generating a strong secret between parties over an insecure channel. (go)
tool
- sundial: C program to get the next time of the sunset and sunrise. (c)
web (13 projects)
tool
- github-backup: A python script to automatically backup all your Github repositories (python)
- linkcrawler: Cross-platform persistent and distributed web crawler. (go)
- crawdad: Cross-platform persistent and distributed web crawler. (go)
- readable: Making web pages readable in a browser and in the command line . (go)
- websitechanges: Change detection with a simple Python script to email you whenever a website changes. (python)
- squirrel: Like curl, or wget, but downloads directly go to a SQLite databse. (go)
- browsersync: A simple live-reloading tool for developing HTML. (go)
- zget: zget is a mashup of curl and wget with torrenting and better interop with Windows. (go)
package
- httpfileserver: Wrapper for Golang http.FileServer that is faster (serving from memory) and uses less bandwidth (gzips when possible). (go)
- googleit: Get results from search engines. (go)
- basicwebsocket: Copy-and-paste friendly practical implementation of websockets for Go. (go)
- getlinks: A simple Go library to get all the links from an HTML page. (go)
- httppool: A simple way to spawn a pool of web clients. (go)
sensor (5 projects)
tool
- howmanypeoplearearound: A python package to count the number of people around you by monitoring wifi signals (python)
- find3-cli-scanner: A command-line scanner that supports Bluetooth and WiFi. (go)
- find3-android-scanner: An android app that scans Bluetooth and WiFi for FIND3. (java)
website
- find3: A framework for high-precision indoor positioniing based on wifi and bluetooth signals. (go)
package
- wifiscan: A platform-independent WiFi scanning library for getting BSSID + RSSI. (go)
file-sharing (6 projects)
tool
- croc: A program for easily and securely transfering files between any two computers. (go)
- cowyodel: Easily move things between computers with a code phrase and cowyo.com. (go)
- syncdir: A program to automatically discover peers and synchronize a folder. (go)
- qrgen: Generate a QR code in ther terminal from stdin. (go)
website
- hostyoself: A website that allows you to share files directly from your browser. (go)
- share: Simple file sharing from the browser and the command-line. (go)
cloud (1 projects)
api
- faas: A function-as-a-service that can make any Go function, anywhere, into an API. (go)
p2p (4 projects)
tool
- ipfs-connect: Easily connect two computers in the IPFS. (go)
package
- peerdiscovery: A Go library that allows cross-platform local peer discovery using UDP multicast. (go)
api
- duct: A simple server to connect any input to another output. (go)
- ipfs-multigateway: An IPFS gateway that uses all the other gateways to make it go as fast as possible. (go)
recipe (3 projects)
website
- recursive-recipes: Visualize the recursive nature of recipes. (go)
package
- ingredients: Extract recipe ingredients from any recipe website on the internet. (go)
- instructions: Easily capture recipe instructions from any website. (go)
static-site (2 projects)
package
- onetwothree: A responsive and minimalist theme for Hugo. (css)
tool
- markdown2tufte: Process markdown into a nice Tufte-like website (css)
tooling (2 projects)
package
organized by type
tool (23 projects)
- github-backup: A python script to automatically backup all your Github repositories (python)
- howmanypeoplearearound: A python package to count the number of people around you by monitoring wifi signals (python)
- croc: A program for easily and securely transfering files between any two computers. (go)
- PIanoAI: A real-time piano playing AI. (go)
- playlistfromsong: A program that generates an offline playlist from a single song. (python)
- spotifydownload: A dependency-free Spotify playlist downloader. (go)
- linkcrawler: Cross-platform persistent and distributed web crawler. (go)
- find3-cli-scanner: A command-line scanner that supports Bluetooth and WiFi. (go)
- find3-android-scanner: An android app that scans Bluetooth and WiFi for FIND3. (java)
- cowyodel: Easily move things between computers with a code phrase and cowyo.com. (go)
- crawdad: Cross-platform persistent and distributed web crawler. (go)
- miti: miti is a musical instrument textual interface. Basically, its MIDI, but with human-readable text. (go)
- readable: Making web pages readable in a browser and in the command line . (go)
- markdown2tufte: Process markdown into a nice Tufte-like website (css)
- websitechanges: Change detection with a simple Python script to email you whenever a website changes. (python)
- syncdir: A program to automatically discover peers and synchronize a folder. (go)
- squirrel: Like curl, or wget, but downloads directly go to a SQLite databse. (go)
- browsersync: A simple live-reloading tool for developing HTML. (go)
- zget: zget is a mashup of curl and wget with torrenting and better interop with Windows. (go)
- ipfs-connect: Easily connect two computers in the IPFS. (go)
- sundial: C program to get the next time of the sunset and sunrise. (c)
- qrgen: Generate a QR code in ther terminal from stdin. (go)
- BandGenerator: Band-name generator, one of my first programs ever written. (java)
website (20 projects)
- find3: A framework for high-precision indoor positioniing based on wifi and bluetooth signals. (go)
- hostyoself: A website that allows you to share files directly from your browser. (go)
- rwtxt: A minimalist cms that allows easy writing and reading. (go)
- i.rwtxt: A version of rwtxt that stays encrypted on disk. (go)
- cowyo: A cms for single pages that can be encrypted and self-destructed. (go)
- poetry-generator: A poetry generating AI. (python)
- offlinenotepad: An off-line first, secure, private notepad. (go)
- recursive-recipes: Visualize the recursive nature of recipes. (go)
- share: Simple file sharing from the browser and the command-line. (go)
- teoperator: Make OP-1 and OP-Z drum and synth patches from any sound. (go)
- snaptext: A simple webapp to send and receive self-destructing messages in real-time. (go)
- kiki: An experimental social network that works offline. (go)
- quotation-explorer: Explore and search over 120,000 quotations, with the click of a mouse . (go)
- anonfiction: A CMS for reading and writing stories in a online magazine format. (go)
- midi2midi: Use Chrome to connect two MIDI devices using <100 lines of Javascript. (javascript)
- carp: Browser-based Korg NTS-1 chord arpeggiator (carp) sequencer. (javascript)
- topscience: Markov-chain generation of science article names. (go)
- painthex: A collection of scripts to turn a set of physical paints into hexadecimal color codes. (go)
- chords: Chord-progression discovery tool. (javascript)
- colorfade: Fade screens between colors in sync. (javascript)
instruction (4 projects)
- raspberry-pi-turnkey: Instructions for adding a wifi hotspot to a Raspberry Pi to connected to any wifi network. (python)
- chickencam: Instructions to build a Raspberry Pi powered chicken cam. (go)
- heartbpm: Instructions for creating a system of controlling electronic instruments with heart rate. (go)
- tape-synth: Instructions to create a cassette synthesizer. (go)
package (27 projects)
- peerdiscovery: A Go library that allows cross-platform local peer discovery using UDP multicast. (go)
- closestmatch: A Go library that does fuzzy matching on a set of strings. (go)
- pluck: A Go library to do regex-like searching on strings. (go)
- jsonstore: Simple thread-safe in-memory JSON key-store with persistent backend. (go)
- getsong: Download any song mp3 with no dependencies except ffmpeg. (go)
- pake: PAKE library for generating a strong secret between parties over an insecure channel. (go)
- onetwothree: A responsive and minimalist theme for Hugo. (css)
- ingredients: Extract recipe ingredients from any recipe website on the internet. (go)
- httpfileserver: Wrapper for Golang http.FileServer that is faster (serving from memory) and uses less bandwidth (gzips when possible). (go)
- wifiscan: A platform-independent WiFi scanning library for getting BSSID + RSSI. (go)
- sqlite3dump: A Golang library for dumping SQL text from sqlite. (go)
- logger: Simplistic, opinionated logging for Golang. (go)
- golock: Very simple file locking with optional timeouts. (go)
- googleit: Get results from search engines. (go)
- basicwebsocket: Copy-and-paste friendly practical implementation of websockets for Go. (go)
- fbdb: File based database, a keystore based on sqlite. (go)
- instructions: Easily capture recipe instructions from any website. (go)
- logue: A collection of Korg logue patches for the NTS-1 (or possibly minilogue XD). (c)
- utfdecode: A simple library to decode a string that contains escaped UTF-16/32 characters into unescaped UTF-16. (go)
- getlinks: A simple Go library to get all the links from an HTML page. (go)
- httppool: A simple way to spawn a pool of web clients. (go)
- documentsimilarity: Compute document similarity using simple methods. (go)
- boltstore: A simple keystore written around Bolt. (go)
- blndr: A quantized delay for monomes norns. (lua)
- clcks: A quantized repeater for monomes norns. (lua)
- oooooo: Set of digital tape loops monomes norns. (lua)
- barcode: A six-voice varispeed looper for monomes norns. (lua)
api (4 projects)
- faas: A function-as-a-service that can make any Go function, anywhere, into an API. (go)
- duct: A simple server to connect any input to another output. (go)
- boltdb-server: Server and Go package for connecting to BoltDB databases. (go)
- ipfs-multigateway: An IPFS gateway that uses all the other gateways to make it go as fast as possible. (go)

