How m-yazidxx/acoustic-guitar-strum works
Acoustic Strum Studio is a browser-based guitar performance workstation. A user configures song sections, starts performance mode, then switches sections or uses automatic strumming while adjusting sound controls. The app builds an audio graph and loads an acoustic-guitar instrument; it can also record that graph’s output and expose a recording for download. The README is a generic React/Vite template and documents no additional product capabilities. The sampled excerpts establish these runtime features, but omit portions of the component logic, so uncertain scheduling and control details are not mapped.
Main entry points: App.jsx Studio UI · main.jsx React entry
Components 13
Studio interface
- React entry
src/main.jsx - Studio UI
src/App.jsx
Performance logic
- Song sections
src/App.jsx - Strum controls
src/App.jsx - Chord voicings
src/App.jsx
Audio and recording
- Audio graph
src/App.jsx - Guitar instrument
src/App.jsx - Soundfont player
- Web Audio
- Recording capture
src/App.jsx - MediaRecorder API
- Audio recording
Other components
- Performer
Connections 14
- React entry → Studio UI: renders
- Performer → Studio UI: configures and plays
- Studio UI → Song sections: sets and switches
- Studio UI → Strum controls: controls
- Strum controls → Chord voicings: selects chords
- Strum controls → Audio graph: triggers sound
- Studio UI → Audio graph: sets audio controls
- Audio graph → Guitar instrument: routes audio
- Guitar instrument → Soundfont player: loads instrument
- Audio graph → Web Audio: uses audio context
- Studio UI → Recording capture: toggles recording
- Recording capture → MediaRecorder API: records stream
- Recording capture → Audio recording: creates download
- Audio graph → Recording capture: provides stream