Ex libris
John Kagunda
Quiet by default. Responsive when it counts.
I'm John, RafaelJohn9 on GitHub. I build the tools I wish already existed, usually right after something took far more pain than it should have. M-Pesa integrations. Setting up the same repo for the tenth time. A till that stops selling because the internet blinked. If I've fought it twice, I'd rather automate it once.
I also can't leave a black box alone. That's how I ended up writing my own BitTorrent client, a vector database from scratch, and most of the Under the Hood shelf on this site. Knowing what Git or SQLite is actually doing beats memorising the commands, and it's a lot less stressful when something breaks. Which it will.
Most of what I build is for Kenya first: shops where KPLC takes the power for the afternoon, fiber that falls back to a 4G hotspot, businesses that already run on WhatsApp and M-Pesa. That's the world OptiBiz AI was built for, and it won my team the Business category at the JKUAT 2025 Hackathon.
Code should be elegant, not clever. This site is where I write things down once they finally click, so the next person gets there faster than I did.
Currently brewing
- mpesakit Python M-Pesa integration shouldn't require a PhD in frustration. A Daraja API SDK that handles the token rotation and credential encryption, sync or async. Add your credentials, call a method, move on.
$ pip install mpesakit - gitcraft Rust Formerly gh-templates. Licenses, .gitignores, issue and PR templates in one command, because clicking through GitHub's UI for every new repo is pain.
- CrustyTorrent Rust My own BitTorrent client in Rust. Now make yours.
- VexDB Database A vector database, implemented from scratch.
~/.config
# the short version editor: vim # fight me shell: bash os: linux # obviously languages: [rust, python, javascript] motto: "if it's worth doing, automate it" coffee: true # required dependency
On the shelf
- Vol. 01 Point of Sale for Kenya 2 chapters
- Vol. 02 Software Architecture 6 chapters
- Vol. 03 Under the Hood 4 chapters
- Vol. 04 Algorithms 3 chapters
- Vol. 05 Reading Notes 2 chapters
- Vol. 06 Hype Check 2 chapters
Latest chapter
Say hello
- john@kagunda.dev
- GitHub
- rafaeljohn9
- John Kagunda