Work

Libraries, firmware, pipelines and products across three areas. Most of it is open source; follow the links to the code.

Trading infrastructure

Broker clients that keep working through a reconnect.

Typed, tested clients for broker APIs whose protocols change underneath you, plus the plumbing to run the gateways they talk to.

Open source library
crates.io as ibapi · MIT

rust-ibapi

github.com/wboayue/rust-ibapi

A Rust implementation of the Interactive Brokers TWS API. It ships an async client on Tokio and a blocking client on crossbeam from one codebase, and other developers build market data tools, research systems and portfolio software on top of it.

Version 3.0 replaced the legacy text wire protocol with protobuf throughout, a breaking change to a library that already had users, which meant a migration guide and a maintained v2 branch running alongside the rewrite. Version 4.0 followed in September 2026 with a second guide and tighter decoding of the wire format.

396stars
110forks
1,277commits
66releases
let contract =
    Contract::stock("AAPL")
        .build();

let mut bars = client
    .realtime_bars(&contract)
    .subscribe()
    .await?;
Flight systems

Sensing and estimation on bare metal.

Embedded Rust for flight controllers. Sensor fusion crates, firmware for real boards, the wire format between them and the tools to watch it fly.

Open source firmware
ARK FPV · STM32H743 · RTIC 2

The discovery series

ark-fpv-discovery discovery-telemetry discovery-scope

Three crates for exploring the sensing half of flight control. The firmware runs bare metal on the ARK FPV flight controller, brings up the IMU, barometer and magnetometer, fuses them into attitude and altitude, and streams the result over USB.

The telemetry crate defines the bytes on that wire once, postcard inside COBS frames, shared by the no_std firmware and the desktop host so neither side hand writes a parser. The scope reads the stream and draws a primary flight display in egui: artificial horizon, altitude and vertical speed tapes. Deliberately not a full flight stack. The fused estimate is the endpoint.

USB CDC byte streamtransport
COBS frame0x00 delimited
postcard bytesno_std serde
Frame { t_ms, msg }Imu · Baro · Mag · Fused
Open source libraries
crates.io · no_std

fusion-ahrs and fusion-altitude

fusion-ahrs fusion-altitude

fusion-ahrs is a Rust port of xioTechnologies' Fusion library: a complementary filter that combines gyroscope, accelerometer and magnetometer readings into orientation, with gyro offset correction and sensor calibration built in.

fusion-altitude picks up where orientation stops. Barometers drift slowly and are noisy over short spans; integrated acceleration is the reverse. A third order complementary observer fuses the two into altitude, climb rate and a running estimate of accelerometer bias, so a constant bias leaves no steady state altitude error.

r     = baro_alt - h
a_c   = accel - bias

v    += (a_c + k_v*r) * dt
h    += (v + k_h*r) * dt
bias -= k_b*r * dt
Language models

Repeatable output from a model that never answers the same way twice.

Products that put a language model in front of users, and the versioning, cost tracking and error handling that make it dependable.

Product
Owned and operated

Prompt Chainr

promptchainr.ai

A web app for building and running multi step prompt chains, so work that takes a careful sequence of prompts can be saved once and rerun on demand. Built for content producers and marketers who want repeatable output from language models without writing code.

Running a model inside a product raises its own questions: prompt versioning, cost per run, and what a user should see when the model returns something unexpected. Prompt Chainr is where those get answered in production.

1Extract themes from source
2Draft in brand voice
3Tighten and cut length
4Split into channel variants
✓Saved chain, rerun on demand