Contents

From Learning Project to Shipped Product: The Story of Heathcliff

About ten months ago I started working on a plugin that would let me use my DJ controller inside my DAW. I already had programming experience, and I’d been playing around with JUCE — mostly learning and throwing proof-of-concepts at the wall.

In December 2025 I decided it was time to stop prototyping and build something real: Heathcliff, for desktop.

The goal was simple: learn the JUCE framework properly and pick up some DSP along the way.

The prototypes that came before hadn’t really led anywhere. There was a lot of experimentation, but no fully-fledged plans. Heathcliff was different. From the start I had a clear picture of what it was and how we’d build it.

Heathcliff Pro

Architecture first

Heathcliff grew out of a design document that was turned into architecture contracts from day one.

We adopted MVVM as the core design pattern, and we were strict about one rule in particular: JUCE would never be part of the engine.

That meant the model was JUCE-free and fully portable from the beginning — a decision that paid off later in ways I hadn’t fully appreciated at the time.

Six months to desktop

By June I had a finished desktop product running on my Mac.

The next question was distribution, and that’s where Gumroad came into play. I spent the next few weeks setting up the store and porting Heathcliff to Windows.

For the first time, one of my learning projects had turned into an actual product that someone else could use.

Then came the iPad

Of course, we weren’t done.

The next step was bringing Heathcliff to iPad — and because the model was portable from the start, that meant engineering the AUv3 surface rather than rewriting the product.

Four months later, we not only have an iPad version, but the Pro version has gained three additional FX, making it even more fun to play with.

Getting there was its own education.

AUv3 app extensions, entitlements, provisioning profiles, running a plugin inside AUM on a tablet — plenty of head-scratching and re-reading of documentation.

Navigating Xcode, certificates, and the App Store Connect review process took a few passes too. But shipping through Apple’s pipeline turned out to be worth every minute of it.

All versions are available now

And this week, all versions are available.

Check out the creations page for details. Heathcliff is free, and Heathcliff Pro is waiting if you want the extra bands and FX.

So what’s next?

Here’s where that JUCE-free engine decision pays off again.

Because Heathcliff’s core is pure, portable C++, porting it to VCV Rack is not only possible — it may very well be just around the corner.

And beyond the rack, running it on a microcontroller like the Daisy is on the same path.

The architecture that made the iPad port painless is exactly what opens those doors.

What started as an excuse to learn JUCE and DSP has turned into something much bigger: a real product, a portable audio engine, and potentially the foundation for some future hardware.

Stay tuned.