Projects


A non-exhaustive list of fun and interesting open-source projects that I’ve worked on.

Mojobag

  • #llm
  • #mojo

Mojobag is a BPE tokenizer in Mojo. It’s still a work on progress, but the highly performant training core is fully implemented. I built this so I could understand a crucial part of LLMs in more depth, and also as an excuse to play around with the Mojo programming language after their announcement of version 1.0.

github.com/mempirate/mojobag

Guillotine

  • #embedded
  • #ui
  • #rust

The embedded Rust community and ecosystem is sprawling, yet I couldn’t find a simple, lightweight, flexible and good-looking UI framework for another embedded project I was working on. Guillotine is the result of taking matters into my own hands. It allows one to declaratively build stateful user interfaces and is a hybrid between immediate and retained mode.

It powers the shellyctl project (see below).

github.com/mempirate/guillotine

Shellyctl

  • #embedded
  • #rust

I have a minirack near my desk that runs various hardware, including a power-hungry Minisforum MS-S1 Max AI mini PC to run local LLMs. I bought a Shelly Plug S Gen3 to monitor energy usage metrics of said rack, and hooked it up to a small ESP32-powered display that periodically polls usage stats and displays them in a tiny dashboard.

github.com/mempirate/shellyctl

zc-rlnc

  • #networking
  • #cryptography

Zerocast is a proof of concept that combines 2 mechanisms that I’m really fascinated by: random linear network coding and Pedersen commitments. RLNC is a network coding protocol that allows p2p networks to fully utilize their collective available bandwidth in order to transmit messages from sending nodes to receiving nodes. The problem is that by default, this only works in trusted networks, because standard authentication mechanisms don’t work on RLNC encoded data, and without trust or authentication it’s trivial to spam the network with bogus chunks that don’t decode into anything meaningful (pollution attacks). Pedersen commitments are a way to achieve this authentication.

github.com/mempirate/zc-rlnc

MSG

  • #networking
  • #rust
  • #performance

A highly performant and flexible messaging library in async Rust, inspired by ZeroMQ.

github.com/chainbound/msg-rs