My Open Source Projects

I made these coding side-projects and continue to maintain them:

  • Cala: Cross-Platform Application Framework
  • ScoreFall Studio: Music Notation Web Assembly App
  • PNG Pong: PNG Encoder and Decoder
  • Twang: Audio Synthesis Software Library
  • WhoAmI: Cross-Platform Library To Get User And Computer Info
  • Fonterator: Text Layout And Font Engine
  • Pitch: Pitch Detector Library For Audio
  • Pasts: Minimal Asynchronous Runtime For Rust
  • Smelling Salts: Library for Creating Runtime-Agnostic Rust Futures on Linux
  • Fon: Audio Types and Conversions Software Library
  • Wavy: Portable Asynchronous Real-Time Audio Recording / Playback Library
  • DL API: Rust FFI Abstraction for Dynamically Loading C APIs
  • Stick: Real-Time Asynchronous Gamepad / Joystick Library
  • Koggie: Internet Radio Server

Reinventing Asynchronous Rust


A Brief Intro To Asynchronous Programming In Rust

Lets say you want to write some async/.await code in Rust, since it's new and cool.  Let's start with the simplest async program that you could write (a timer).  First we have to create a Future, something that completes at some point in the future but won't start unless you execute it (in Rust, this is called lazy evaluation).  Here's some code to start:

Read More…

Fixing Jitter - Timestep Issues



While working on Cala, I noticed something strange about how timesteps are usually handled, and a way to fix an issue with them.  A little bit of background first: a timestep (delta time) is how much time passes between each frame in a game or animation.  In the early days games didn't handle this correctly.  They would develop for whatever computer system was popular at the time and set a fixed delta time. 

Read More…

About Jeron Aldaron Lau

Picture of Jeron Lau

Jeron Lau makes software and composes/produces music.  He's always up for collaboration on either, which would explain the large number of open source projects he's authored.  His favorite programming language is Rust and favorite genre of music is Synth-pop.  He likes to combine his passions, and is working on buiding a synthesizer trombone mute.  Jeron Lau believes that building cross-platform user-space applications should be as easy as developing for an embedded system, which led him to start the Cala Project, a collection of portable Rust software libraries for interfacing with personal computer and mobile phone hardware.  Jeron Lau also plays trombone and occasionally releases short films on YouTube.  You can contact him at