Projects

Each card is the problem and why I built it. Facts from the work itself and public links — nothing padded.

The Boring Tool

Mendix Studio Pro extension

Problem
A lot of Studio Pro work is repetitive microflow setup — validations and the same patterns again. That tooling should be small and reliable, not dashboard theatre.
Why I built it
I kept rebuilding the same Create / Get / Commit / validation / DTO patterns by hand in Studio Pro. The Boring Tool generates those as small, editable model pieces — first for me, hopefully for other Mendix developers too.

Betty Connect

VS Code extension · Betty Blocks

Problem
Betty Blocks templates lived in the platform. Editing them in VS Code — and writing page-builder custom components there — was not a first-class path.
Why I built it
Betty Connect connects VS Code to a Betty app: activity-bar template tree, save writes back to Betty, `.liquid` support, snippets for page-builder custom components, model browser, and multiple workspaces to different apps.

KMOSC

Personal project · Keyboard Maestro + OSC

Problem
Keyboard Maestro macros are strong on the Mac, but triggering them from OSC (live setups, other tools, other machines) was not a small shippable path.
Why I built it
KMOSC is a macOS app plus a Keyboard Maestro plugin so OSC addresses map to macro names. Apple Silicon and Intel builds, plugin zip, CLI send helper, and a short help video on YouTube.

TypeByEar

Personal project · SvelteKit · Hear it. Type it.

Problem
Copying visible text on typing sites felt fast — until I typed my own words. That gap is generative typing: sound or intention → keys, without peeking.
Why I built it
TypeByEar keeps words hidden; the app speaks one, you type from memory, with live letter colors. EN/NL, sessions of 10/25/50, keys mode and slow-keys drill, local IndexedDB history and charts. Closer to real work than mirroring a line beside the caret.