Revive Loop Machine as the LM-919 - #42
Merged
Merged
Conversation
Rewrite the app in TypeScript on React 19 and Vite, with pnpm only. - One session document drives everything: UI dispatches pure commands, the store keeps undo history, and the share link (v2) is rewritten on every change. - New Web Audio engine: a worker-ticked clock that keeps time in background tabs, synthesized 808 kick, 909 snare, and disco open hat with per-drum delay and decay, a stereo unison arp synth, a kick-triggered pump, a ping-pong delay, and a glue bus with headroom. - New LM-919 panel: TR-909 identity pieces (cream LED step keys, chrome knobs, red 7-segment tempo, Michroma nameplate) on modern surfaces, a piano keyboard with key LEDs, octave and chord selectors, six house patterns, and undo. - Replace Jest, Babel, Tailwind, and the old JSX components with Vitest, ESLint, and CSS Modules; CI runs lint, typecheck, test, and build. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
A link naming __proto__ as a drum made decoding write knob values onto Object.prototype. Only accept ids the session actually has. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- Links from the previous app (<steps>_<knobs>_<bpm>) now load their beat, volumes, and tempo instead of a blank machine. - The tempo arrows and black piano keys get a focus ring that shows on their dark surfaces. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Links from Jul-Dec 2025 used a shorter knob part and opened a blank machine. Like the previous app, load the steps from any <steps>_<knobs>[_<bpm>] link, and read volumes only from the layout that carries them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Human comments
What was wrong
Loop Machine was a JavaScript/Tailwind prototype with dated visuals and thin, clipped synthesized sounds. It also carried leftover Jest, Babel, npm, and dev-toolbar tooling.
What changed
?s=2~…) now encode the whole session, including the new controls.How you verified
b7547b5. RunObject.prototype; a regression test covers it.P2 follow-ups from the review (not fixed here)
public/still deploy; README lists old knobs.Screenshots
Before:
8919665· After:344a67a(the headb7547b5only adds link decoding) · Captured at 2× in Chrome for TestingBB-Thread-ID: thr_d58s3peww2
🤖 Generated with Claude Code