Projects
I write a lot of software. Not all of it is production quality, but I like to make it public so that others can benefit from my work.
- nnote cli bash is a minimal notetaking tool designed to mesh well with Neovim’s Telescope plugin, Vim with CtrlP, or any other quick-navigating terminal-based editor.
- sigweb web rust is a generator for random musical ideas for synthesists.
- RandomUA web javascript is a WebExtension that changes your User-Agent string to a sensible-looking UA string which is different for every request.
- Open Energy Dashboard contributor web javascript is a web application that ingests, stores, and allows users to analyze data from smart energy meters. I worked on this throughout my degree program at Beloit College.
- Corobel web rust archived is a set of tools for interacting with the Cohost API, including per-post source retrieval and RSS feeds with and without transparent shares. Archived with the death of Cohost.
- gDiceRoller gui rust is a GTK app that allows users to roll dice in simple or complex combinations. Created to teach how to make and package GTK applications with Rust and Flatpak.
- RLoris cli rust is a concurrent and parallel implementation of RSnake’s SlowLoris application level DoS attack on many web servers (like Apache).
- counted-rs cli rust archived is a command line interface to fetch CSV-formatted data from The Guardian’s database of police shootings in the US.
- update-rate library rust is a low-overhead update counter for high-performance applications.
- eggbug-rs contributor library rust is a bot library for the reverse-engineered, non-stable API of Cohost.
- workctl library rust is a set of mid-level abstractions for controlling concurrent/parallel programs
- whiteout
library
rust
provides
macros that erase the type of any value into an
impl Trait
for a given trait. - libui-rs library rust archived is a Rust interface providing cross platform access to native UI frameworks.
- helicase library python archived can read and write strings of DNA bases, and convert them to framed strands or polypeptides in Python.
- sbrain library rust archived is a 25-symbol programming language specification and VM implementation, in Rust.
- MLeM library rust archived implements the Machine Learning Machine, a virtual machine designed as an ML target.
- Markdown @ Edge web rust is a WASM app that renders Markdown on each HTTP request.
- PyParens cli python is a toy Lisp language that executes in a Python context, with full interoperation.
- esp8266_scan cpp is a wireless scanner code for the ESP8266 chip, which produces either JSON or human-readable output.
- geiger_counter cpp is a Geiger counter with a dosimeter output for comparing the radioactivity of different samples.