The LucidHarmony Tech Stack: Modeling, Plugin, and Website

A categorized inventory of the core technologies behind LucidHarmony.

Published: December 17, 2025 • 10 min read

LucidHarmony is built as a full pipeline: we train transformer models offline, run real-time inference inside a JUCE audio plugin via ONNX Runtime, and support it all with a static website + infrastructure for shipping updates and documentation.

This post is a living inventory of the technologies we use across the three layers.

Modeling & Data Pipeline (Offline)

Programming language & runtime

Symbolic music + analysis

Machine learning

Music representation

  • Roman numeral tokens — functional harmony representation (e.g. I, V6, ii°, etc.).

  • Quantized harmonic rhythm — extracting chords on strong beats (e.g. quarter‑note grid) to suppress passing-tone “chatter”.

Plugin (Real‑Time)

Languages & standards

Frameworks

  • JUCE — plugin framework (UI, audio/MIDI plumbing, file export).

Plugin formats / DAW integration

Inference runtime

  • ONNX Runtime — the plugin loads trained models exported to ONNX format and runs inference via the ONNX Runtime C++ API. This replaced a custom LSTM implementation in v1.3.0.

  • Softmax + sampling — generation uses softmax probabilities, temperature scaling, and top-K style filtering.

Voicing / musical constraints

MIDI

  • MIDI file generation — exports single-track and multi-track MIDI, with time signature meta events.

  • Drag-and-drop MIDI UX — DAW-friendly workflow to get generated harmonies into your project quickly.

Website (lucidmusician.com)

Framework

  • Astro — static site generator. All pages are pre-rendered HTML at build time with zero client-side JavaScript by default.

Styling

Content

Performance

Infrastructure / deployment

IaC

Hosting + CDN

DNS / certificates

Release Packaging (macOS AU)

For macOS distribution, we automate AU installer creation with a small Bash script:

  • scripts/package_au_pkg.sh

At a high level it:

Try LucidHarmony

Gorgeous, infinite chord progressions for ambient and scoring — powered by the AI techniques discussed in this article.