- ✨ Python by day, Rust by night
- 📚 Slowly reading https://craftinginterpreters.com
- ❤️ Passionate about Open Source software
- ♟️ When I'm not coding you can find me losing on https://lichess.org
🌱 My projects
- aq - Extend jq for any data format
- cargo-onedoc - 📝 Generate your README.md from Rust doc comments
- dotfiles - 🔧 Install packages and my dotfiles on a new system
- install - Install a Rust crate from a GitHub release
- kb-remap - ⌨️ Tool to remap macOS keyboard keys
- sheldon - Fast, configurable, shell plugin manager
- casual - Simple Rust crate for parsing user input
- complexity - Calculate cognitive complexity of Rust code
- constcat - 🐱 concat! with support for const variables and expressions
- emojis - ✨ Lookup and iterate over emoji names, shortcodes, and groups
- fmutex - Provides mutual exclusion on a file using flock(2)
- goldie - 🌟 Simple golden file testing for Rust
- itermore - 🤸 More iterator adaptors
- pulldown-cmark-toc - Generate a table of contents from a Markdown document
- radiotap - A parser for the radiotap capture format
- regex-macro - Only compile a regex once, abstracted
- upon - 📌 A lightweight and powerful template engine for Rust
- vectrix - 🏹 Stack-allocated, constant-size, matrix type implemented with const generics
- pycases - 💼 A case conversion library with Unicode support
- cases - 💼 A case conversion library for Go with Unicode support
- fudge - 🍦 Oh Fudge! A straight-forward error library for Go
- powerpack - ⚡ Supercharge your Alfred workflows by building them in Rust!
- crates.alfredworkflow - 📦 Alfred workflow to search Rust crates
- github.alfredworkflow - Alfred workflow to search GitHub repositories
- gitlab.alfredworkflow - 🦊 Alfred workflow to search GitLab issues and merge requests
- setup-crate - 📦 GitHub Action to install a Rust binary
- setup-just - 🤖 GitHub Action to install the just command runner