Folium has been in Early Access since March. This is the log of what happened after, written from the commits, in order. The good releases and the bad weeks both. If you own a key you paid for a thing that is still being built, and I think you should get to watch it get built.
Newest first.
In flight
Written and tested, sitting on the development branch, not in a release yet.
- The LFO shape selector could play the wrong shape. Shape 4 was making a round trip through the host as 3.999996 and truncating back to 3, so your DAW said Breathe and Folium played Scatter. Every shape now lands on itself.
- VST3 morph restore, round two. Some hosts hand a plugin its saved state before the audio engine exists, and some hand it over twice. Bitwig and Reaper at large buffer sizes were the ones I could reproduce. Folium now waits for the host to be ready instead of assuming.
- A damaged install can no longer empty your factory bank. The upgrade path verifies the new bank is intact before it replaces the old one. If anything looks wrong it leaves your presets alone.
- The morph dot glides. It used to stair-step across the fader. Small thing. It bothered me every time I saw it.
- Hover tooltips, and the version number under the wordmark when you hover it.
Known quirks
- under wide microtunings, draw the motion-lane bars small to sweep the full ratio span
Coming
- new percussive envelope modes
- a panel home for feedback FM
- deeper Width shaping, drawn and visualized in the bloomscope
1.0.6.1 — July 2026
A day after 1.0.6 went out, an owner on an older Intel Mac sent me a screenshot where every knob was a black circle. The new palette uses a color function that his WebKit did not know, and rather than fall back it just painted nothing. Four fixes, out the same night.
- Knobs render on older Macs again. The palette now resolves to plain values at build time instead of asking the browser to blend them.
- The demo badge could stick on a paid copy. It cleared on unlock but the panel did not always hear about it. Fixed.
- Upgrading now gives you the new factory bank. Before this, an existing install kept the old presets forever, because the plugin only seeded them on a first run. Your own saved patches are still never touched.
- VST3 sessions reload their morph state. Reopening a saved project used to collapse A and B into whatever was current.
1.0.6 — July 2026
The largest release Folium has had, and the one where I stopped trusting my ears alone. It started with a state audit that found the plugin was restoring 57 of its 103 controls on reopen and inventing the rest, which meant every A/B snapshot taken after a reopen was quietly built on wrong values. That took two weeks to unwind. Then the oscillator got built in a day, the envelope got a real editor, ten separate clicks got hunted down, and licensing got written so Folium could be free to download.
- The carrier is no longer just a sine. WAVE has three positions. SINE is what Folium always played, unchanged. WARP pulls the sine off center for a warm, even-harmonic lean. CARRIER is the one I’m proudest of: the waveform is rebuilt out of your scale, every partial a degree of the tuning you loaded. Load a different tuning and the wave itself changes. COLOR sweeps the brightness inside whichever wave you’re on, and it’s a modulation destination like any other.
- CARRIER nearly did not happen. The obvious way to build it is a single-cycle wavetable, and I spent a morning proving on paper that it cannot work for a scale that does not repeat at the octave. So it is a bank of 48 real oscillators instead, and the worst pitch error across the whole range is 0.64 cents.
- Two waves got cut. Phase distortion and a formant wave both shipped in an early build and both went in the bin a week later. Three good waves beat five where two are filler.
- Feedback FM, in the engine. The carrier can modulate its own phase. A little adds bite, a lot goes ragged. There’s no knob for it on the panel yet, so for now it’s an automation lane in your DAW. I’m still looking for the right place to put it.
- The wavefolder is its own panel. Three characters of fold. FOLD and BIAS each sit paired with their own modulation lane, and TYPE stands alone at the end.
- Envelopes, rebuilt. A full-height editor with a truthful time axis, bendable curves between the nodes, per-stage sync, and a playhead per stage. Drag a node and read the value while you drag it. The two envelopes can diverge and relink. Loops track the morph fader live instead of stalling to sustain. The whole factory bank was migrated to it, sound preserved.
- The envelope times were lying by about 2.7x. A stage labelled 100 ms was arriving in 26. Every number on that panel is now the number you get.
- The note-off click, finally explained. Release was always seeded from the sustain level no matter where in the envelope you let go, so a note released during its attack jumped by up to 112 dB and got crossfaded over a fixed 256 samples. That is why it was the same length click on every patch. It is gone, and it is pinned.
- Sustain pedal. CC64 was being dropped entirely. It works now, and a stuck note can no longer survive a panic.
- Morph, made honest. The A/B buttons tell you which side you’re authoring. The crossfader drives the filter lock, the sequencer clock, the mod ranges, and the glide amount, so what you hear matches what’s on screen. Held notes stay put across the midpoint instead of relocating. Editing one side no longer quietly changes the other.
- Everything comes back the way you left it. Reopening the window, reloading a session, and saving a patch mid-edit all restore every control faithfully. This was the biggest single area of work in the release and it’s mostly invisible, which is the point.
- Voices that went quiet. Under fast playing there were three separate mechanisms that could squash a note’s level, and none of them fired often enough to catch by hand. I built a recorder that runs inside the plugin and dumps the last few seconds when something looks wrong, left it running for hours, and read the results.
- Analog character is always on. Per-voice tolerance, drift, and a gentle tape saturation at the master, baked in at full rather than hidden behind a control.
- Filters. Resonance locked to the scale now steps cleanly between degrees instead of gliding through the cracks, and the cutoff calibration is true across the whole band.
- Presets. A reworked 68-patch factory bank in five categories: Keys, Lowend, Bells, Needs Arp, Singing Filters. All of them levelled to the same target. The browser opens collapsed, remembers how you left it, and the arrows never wander out of the folder you’re in. Your own saves are never touched by an update.
- I lost a session of preset work to my own tooling. The factory seeder was running on every single plugin open, resurrecting patches I had moved and overwriting edits I had just made. Presets you save are now in a folder the installer will never write to, ever.
- Free to download, unlock with a key. Install Folium and play it. Buy a key when you’re ready and paste it into the Activate screen. Each key draws its own bloom, yours alone.
- The panel. Knobs are machined into the faceplate instead of sitting on it. A dusk palette of natural dyes, the ratio garden blooming inside it. The window opens at a sane size and fills smoothly when you resize it. Cleaner FX labels, a truer LFO scope that rides the real wave, and a lot of small alignment I’d notice even if nobody else did.
- One UI I built and threw away. The oscillator spent about fourteen hours as a bank of vertical faders. It looked great in a screenshot and was miserable to play. Knobs came back.
1.0.5 — July 2026
Two weeks where more than half of everything I wrote was test code. I had been fixing sound by ear, and by June I did not trust that anymore, so I built the Station: a rig that runs the real instrument, drives it, records it, and measures what came out. The first thing it told me was that my filter cutoff knob had been lying since the first release. The second was that a fix I had already shipped and called done was not doing anything at all.
- The cutoff knob was wrong. Lowpass read about 26% high, highpass about 18% low. It had been wrong forever and it sounded fine, which is exactly why nothing caught it. Dialed Hz now equals heard Hz.
- The filter sings in tune. Push resonance past 70% and it self-oscillates on a degree of your scale. The old filter could not do this honestly: its pitch pulled by 40 to 120 cents depending on cutoff, which is fatal on a microtonal instrument. A ladder filter takes over above that point and holds within about 2 cents. No new control, same knob.
- The first attempt at that was fake. The measurement said green and the sound never changed, because an engage bug was throwing the new filter’s output away before it reached the mixer. Every measurement in Folium now ships with a deliberately broken twin, and if the broken twin passes too, the measurement is theatre and gets rewritten.
- The Intel crackle. Reverb tails were generating thousands of numbers so small the CPU handles them in a slow path, which on Intel Macs turned a quiet tail into a crackle. Inaudible on Apple Silicon, so I had never heard it. Fixed at the source.
- The limiter was coloring everything. It was a permanent soft clip running on every patch at ten to fifteen percent distortion whether or not you were anywhere near loud. Now it is a true-peak limiter at −1.2 dBTP that stays out of the way.
- Ratio garden, rebuilt to base degrees. An N-note scale draws N dots. A two-ring bloom for small scales, a spiral for large ones. Each ratio gets its own dye, mirrored into the motion lane by rank.
- The garden speaks your scale’s own language. If your file writes 3/2, Folium shows 3/2. If it writes cents, you get cents. Saved patches keep the notation they were written in instead of decaying into decimals.
- Envelopes got per-stage tempo sync, shapeable curves, a playhead per stage, and velocity and key-track ghost lines.
- Ratio-lock accuracy under 1 cent, measured rather than assumed. The input bar shows the scale’s name and survives a preset change.
- Antialiasing. FM and the wavefolder oversample at the top of the range, so deep-FM high notes stay clean.
- Analog character arrived as per-voice tolerance, drift, and pink-noise excitation, defaulting to off and bit-identical when off.
- Clicks at voice steal, at note reuse, and during a fast preset scroll under an arpeggiator: found, fixed, and pinned.
- Motion sequencer. Every picked ratio is reachable from any step, the lanes follow the morph fader, and the bar colors encode rank.
- Modulation and morph. LFOs lock phase to host tempo, depth takes a vertical drag, morph interpolates in the engine and keeps running with the editor closed, and swapping a mod source crossfades instead of popping.
- A 79-patch factory bank, reworked, with a loudness pass that respects the morph fader.
- The palette went relational. Every color in Folium is now computed from one anchor rather than picked by hand, so the whole instrument can shift mood by changing a couple of numbers.
- Windows caught up. Computer keyboard, spacebar, file drop, and an installer carrying every tuning and factory preset.
- Windows and Mac nearly diverged. A build error on Windows had an easy one-character fix that would have shifted a filter coefficient on that platform only, so the two would have sounded slightly different forever. The Station’s stored measurements caught it the same hour.
1.0.4 — June 2026
1.0.3 was small, and then I went quiet for most of a month. What broke the silence was sitting down and auditing the whole engine on paper, finding, and writing down every fault with a number next to it. Some of them were embarrassing. The EQ’s low shelf was inverted, so cutting the lows boosted the highs. The limiter was applying its makeup gain after the clip, so the output could reach nearly +3 dBFS. And the oldest flaw in the instrument, a click that had been there since the first release, turned out to be a corner in the envelope’s shape that I could measure and file off.
- The click is dead. The discontinuity at the envelope’s corner went from 13.4% to effectively zero. It had shipped in every version up to that point.
- Voice steal was cutting a hole. Reusing a voice faded the incoming note’s first 256 samples to silence, so fast passages were losing the front of every stolen note. Now the old note leaves and the new one arrives at full.
- The EQ low shelf was backwards. At the bottom of its range it was adding 5 dB of top end instead of taking away bass.
- The limiter could clip past full scale. Its makeup gain was applied in the wrong order.
- Scala files load directly. Drop a
.sclon Folium and it tunes, with no MTS-ESP host needed at all. This is the feature I should have led with and did not. - Patches Folium loses no longer die quietly. In Ableton, the plugin’s own autosave could catch its state mid-write, read a torn copy, and answer by replacing your patch with nothing. I only found it by instrumenting a live session. Minimizing the window was enough to trigger it.
- Per-voice envelope modulation. The envelope can drive ratio, fold, and cutoff, alongside the two LFOs.
- A Pluck envelope model, for one-shot percussive shapes. It sounds bad. It came back out later.
- The Morph crossfader now interpolates inside the engine.
- The factory bank went from 26 patches to 65.
- New palette, tuned. The LFO and motion modules carry their route color and stateless values read warmer. Color is fun.
1.0.3 — May 2026
Three days of small repairs, and then a long pause. The one lasting decision in here is where your presets live.
- Presets and tunings live in one folder under your user library, set up by the plugin on first launch. Nothing of yours sits inside the plugin bundle any more.
- The init patch is the single source of truth for the default sound.
- Window resize glitches on some displays.
1.0.2 — May 2026
This one was not about sound. Two of the three releases I had put out could not be installed by a good number of the people who bought them, and I did not know until they told me. The macOS builds had a broken code signature, so several hosts refused to load them. Ableton on the newest macOS was flagging Folium as malware, because I had sealed the factory presets inside a signed bundle and then the plugin tried to touch them. And every build so far had been Apple Silicon only, which meant Intel Macs never had a chance.
- Signed and notarized properly. The earlier installers were not, whatever they claimed.
- Intel Macs unblocked. Folium is now a universal build and has been ever since.
- Presets moved out of the app bundle for good. That is an architectural rule here now, and it is why the 1.0.3 preset move happened.
- The Morph feedback loop. The crossfader and the DAW were fighting for authority over the same value and stuttering. The DAW wins now.
- The sequencer can drive Morph, which turns a motion lane into a whole-patch animator. The biggest new thing in the release and I forgot to mention it at the time.
- Alphabetical preset sort, and save works on a modified factory preset.
- The drive circuit got rebuilt three times in one day and thrown away twice. One version, at high gain, produced white noise and squealing. The third one shipped.
- Folium had been telling hosts it was version 0.4.0 since the first release. Nobody noticed. It says the right thing now.
1.0.1 — April 2026
Two weeks after launch, and it was mostly reading. Early Access buyers sent bug reports, feature ideas, and a few things I had never thought of. This release is their list.
- Filter-lock resonance boost and multi-octave lock frequencies. 26 presets.
- Ratio lock and filter lock work without an MTS-ESP master connected.
- Drive saturation reworked.
- Windows: DPI-aware initial window size, keyboard focus returns to the DAW, and the LFO slew no longer eats amplitude at higher rates.
- Installers for macOS and Windows.
1.0.0 — March 2026
The first public release, in Early Access. An 8-voice FM synthesizer built around one idea: the scale you load is not a pitch chart, it’s the material the oscillator is made of. Load a tuning and its intervals become the ratios between carrier and modulator.
- The Petal Oscillator, ratios locked to your loaded scale.
- A west coast wavefolder.
- Dual filters per voice, with scale-locked resonance.
- Two LFOs and two motion sequencer lanes with ties.
- Per-voice reverb.
- Morphing between two complete patches on one fader.
- The Seed randomizer.
- MTS-ESP and Scala tuning.