Trevor PaughSystems engineer
Trevor PaughProject Chronicles

Chronicles / Bopsmith

Advanced mode, one slice at a time

Design

The studio now has two modes. Basic is what shipped; Advanced adds a per-instrument effects rack with seven effects in a fixed chain, a set of new sound engines for bass, keys, lead, and drums, and a deeper mixer, all still synthesized in code from the maker's seed. It arrived as four merged slices and one in review, each built against a hard size budget for the first page load, with the engine rendering moved into a background worker so the page never stutters.

The owner’s wish on 14 October was for a mode that felt like a full digital audio workstation. The manager held the project’s founding line while granting it: Advanced adds engines, deeper parameters, and an effects rack, and it still never adds samples, uploads, recording, a timeline, or automation. Every sound stays code-synthesized from the maker’s seed.

The shape of it

The mode is per song and Basic by default. Advanced and every one of its controls are free; each new engine ships with two free presets and two for subscribers. A Basic maker opening an Advanced song hears it exactly as it was made, with the extra panels hidden, a one-line note, and a one-tap switch to turn Advanced on for that song. Nothing in the audio path reads the mode at all, which is how the first rule is kept.

Four slices and a fifth

The rack. An Effects tab per instrument with seven effects in a fixed order: Tone, Drive, Chorus, Echo, Reverb, Duck, Bitcrush. Each has a switch and up to three controls that show real units. A chain strip shows the signal path. Switching a song to Advanced is not a musical change, so an unchanged remix flipped to Advanced is still not listable; adding an effect is.

Engines. New synthesis engines for bass, keys, lead, and drum kits, each with presets and parameters. Old songs load byte-identical, and the server repairs any engine field a client sends out of range.

The worker. Rendering through the new engines was long enough to block the page, so the render job was lifted into a background worker with a main-thread fallback that produces the same samples, tested sample for sample. A pad tap is queued ahead of any waiting cell.

Wiring. Lazy-loaded strings and panels so the pieces above fit in the budget.

The mixer. The fifth slice, a per-instrument advanced mixer, has passed its review fixes and is waiting on the build. Drum accents are approved to follow it.

The budget

Every slice was built against two gzip-size caps, one for the first paint and one for the store’s first load, and the size script now fails the build when either is exceeded. The caps were raised once, by half a kilobyte, with the measurement written down. One slice merged with thirty-four bytes to spare. Keeping a phone-first site fast while adding a studio’s worth of features is the constraint the whole design serves.