Projects
kio-dropbox
A KIO worker that makes a Dropbox account browsable at dropbox:/ in Dolphin, and in the file dialog of every other KDE application. No proprietary client, and nothing synced to disk.
Source available on Github. See the accompanying post.
KVault, KTodo, KNord, and Kadenza
Native KDE clients built with Kirigami (Qt Quick) for:
- Bitwarden (KVault): https://github.com/timpalpant/kvault
- Todoist (KTodo): https://github.com/timpalpant/ktodo
- NordVPN (KNord): https://github.com/timpalpant/knord
- Apple Music (Kadenza): https://github.com/timpalpant/kadenza
See the accompanying post for the first three, and post for Kadenza. Releases available on Github.
Monikoder
A website to explore the latent space of baby names (Moniker Encoder). Find names based on similarity in historical popularity, phonetcs, or “vibe”.
See the accompanying post. Source available on Github.
go-farkle
A solver for optimal play in the Farkle dice game.
See the accompanying post.
MProfile, ZProfile, and PyPprof
Libraries for statistical profiling in Python, and a web endpoint compatible with Go pprof tooling.
See the accompanying series of posts, Statistical Profiling in Python:
- Part 1: Where the Time Goes (ZProfile)
- Part 2: Sampling the Heap (MProfile)
- Part 3: Speaking pprof (PyPprof)
AlphaCats and go-cfr
A project to “solve” the Exploding Kittens card game using ML-powered variants of Counter-Factual Regret Matching.
See the accompanying post.
pitronics
Control a toy robot arm with an Xbox controller and Raspberry Pi GPIO.
See the accompanying post.
NVDAGPUWakeHandler
A macOS kernel extension (kext) for disabling the NVIDIA GPU in the retina Macbook Pro (2012). Requires disabling SIP, but may save you if the GPU dies due to the known overheating issue.
See the accompanying post.
Yahtzee
A simple web app for playing Yahtzee and receiving suggestions for how to play optimally based on a comprehensive retrograde analysis. Play along at yahtzee.palpant.us. Source available on Github.
See the accopmanying series of posts:
go-iex
A Go client for the IEX Developer API, and a decoder for the IEX-TP binary protocol used in their historical market data packet captures.
See the accompanying post.
Rummy
A small client-server game of Rummy 500, built to get some hands-on experience with gRPC.
See the accompanying post.
QCAPI
An unofficial small Python client for working with the QuantConnect API. Makes working locally and syncing your code to the cloud easier. A precursor to the Lean CLI.
SwiftConstraint
A constraint-based programming library in the Swift programming language, based on python-constraint. A project to learn Swift. Use it to solve all those puzzles in the NYTimes Magazine each weekend.
Java Genomics Toolkit
A toolkit and Galaxy integration for analyzing BigWig files used in high-throughput sequencing genomics analysis.
Source available on Github.
Java Genomics I/O
A library for reading and analyzing different data file types used in genomics, and an abstraction layer to make working with different data file types seamless.
Source available on Github.
Territories
A simple game where you compete for territory, vaguely like a simplified Go. Originally written in Adobe Flex, you probably won’t be able to play it anymore. RIP Flash.
See the accompanying post. The latest version was ported to HTML/CSS/JS by Claude Code.