Skip to content

feat(web): picker stops at B5; chord mode is a row of radio buttons - #36

Merged
benjamin-small merged 1 commit into
mainfrom
notes-b5-radio-chords
Oct 12, 2026
Merged

benjamin-small merged 1 commit into
mainfrom
notes-b5-radio-chords

Conversation

@benjamin-small

Copy link
Copy Markdown
Owner

Summary

  • No C6: the picker is C3–B5, 36 chips in three full octave rows (row break before every C except the first). Chord roots that would pass B5 are greyed out with "… runs past B5"; links drop midi above 83.
  • Radio chord picker: the Pick dropdown is now a radiogroup of real type="radio" inputs (shared name, so arrow keys move between them), drawn as pills like Pure ratios / Piano with the chosen one tinted and a focus ring on keyboard focus. Behaviour unchanged: a chord re-voices the current root; Single notes keeps the pick.

Validation

  • vitest 396/396 (chord-mode tests now click radios and assert a single shared group name; range and limit tests moved to B5), svelte-check 0 errors, cargo fmt clean (no Rust changes)
  • Browser: 36 chips ending at B5; clicking Minor then D4 gives D/F/A at 0.50 → 0.56 Hz; ArrowRight moves to Diminished and re-voices to D/F/A♭; F♯5 and up greyed for Diminished; no console errors

…adio buttons

The picker drops C6: C3 to B5, 36 chips in three full octave rows (a break before every C but the first), and chords grey out the roots that would pass B5. The Pick dropdown becomes a radiogroup of real radio inputs drawn as pills like the tuning pair, so the arrow keys move between Single notes and the six triads. Tests, README, tip text and spec updated.
@benjamin-small
benjamin-small merged commit 333a950 into main Oct 12, 2026
6 checks passed
@benjamin-small
benjamin-small deleted the notes-b5-radio-chords branch October 12, 2026 23:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant