Claude 5161d062e4 Re-verify session's rhythm fixes against fetched public-domain scores
Went back through the pieces modified this session and checked each
against an actual fetched source (mobilehymns.org, gmajormusictheory.org
public-domain hymnal/beginner scores, rendered and read directly) instead
of relying on memory alone. Corrected what didn't match:

- Oh! Susanna: chorus was too fast/rhythmically flat; the real setting
  opens "Oh! Su-" on sustained half notes, much slower than the verse
- Camptown Races: "Doo-dah! Doo-dah!" was an even stepwise run; the real
  song is quick "Doo-" + long held "dah!" (quarter + dotted-half)
- We Three Kings: refrain confirmed to be in a lilting compound meter,
  not straight 4/4 as this had it; opening "O" adjusted toward that feel
- Angels We Have Heard on High: the Gloria melisma is a 16-note rise-
  and-fall that dramatically descends a full octave; previous version
  was 15 notes spanning only a 6th
- Hark the Herald Angels Sing: confirmed this hymn is truly strophic —
  "Joyful, all ye nations rise" is sung to the exact same tune as "Hark!
  the herald angels sing," not a different melody. Rebuilt from an
  invented chorus+verse alternation into one repeated 8-line stanza tune
  with a closing reprise of just the opening couplet, matching the score
- O Come All Ye Faithful: "O come, let us adore Him" is a descending
  sequence — the same phrase shape repeated a step lower each time — not
  one phrase repeated verbatim three times
- What Child Is This: the hymn is published in E minor with its own
  confirmed melodic shape, distinct in some details from the Greensleeves
  transcription elsewhere in this file; corrected to the hymn's own
  source rather than assuming the two are pitch-for-pitch identical

Also fetched and read an actual public-domain score for 12 Days of
Christmas and We Wish You a Merry Christmas: both confirmed the existing
content (cumulative day-by-day structure, and the earlier New Year's
ending fix, respectively) without needing further changes.

Molly Malone, Whiskey in the Jar, and Cielito Lindo: attempted the same
verification, but couldn't reach a fetchable note-level source for these
(several sites blocked automated fetches); their content is unchanged
from the prior pass and remains a best-effort construction rather than
source-verified.
2026-08-03 12:24:22 +00:00
2026-04-05 11:25:59 -04:00
2026-03-29 21:51:14 -04:00

Drum Rhythm Game

A browser-based drum rhythm game. Notes scroll down the screen and you hit the matching drum pad in time — like Rock Band, but it runs entirely in your browser with no server, no dependencies, no install. Just open index.html.

Works with keyboard, Wii Rock Band drums, Xbox/PS Rock Band drums, Guitar Hero drums, or any USB gamepad. Includes a Remap Pads button to configure any controller.

How to Play

  1. Open index.html in Chrome or Edge
  2. Pick a genre and song
  3. Adjust speed/volume sliders if desired
  4. Click Start
  5. Hit the pads when notes reach the line:
    • F = Red (Tom)
    • G = Yellow (Snare)
    • H = Blue (Hi-hat)
    • J = Green (Tom 2)
    • Space = Kick (Bass drum)
    • D = Crash (off by default)
    • K = Ride (off by default)
    • L = Tom 3 (off by default)
    • Escape = Pause
  6. Right-click any genre tab or song to hide it

Features

  • 18 Genres across two modes: synth orchestra songs + drum beat patterns
  • 119 synth pieces with full synthesized orchestra background
  • 120 drum patterns across 8 genres
  • Note density toggle — switch between Full and Simple (fewer notes for beginners)
  • Drums or Orchestra mode — choose whether pad hits play drum sounds or the actual melody note
  • Speed control — slow down to 50% for practice or speed up to 150%
  • Volume control — adjustable master volume
  • Pause/Resume — press Escape or the pause button mid-song
  • Gamepad Remap — configure any USB drum kit with the Remap Pads button
  • Hide genres/songs — right-click to hide, "Show All" to restore, saved across sessions
  • Multiplayer — take turns, scores compared at the end
  • 8 lanes — 5 default pads + 3 extra (Crash, Ride, Tom 3) toggled on via Active Pads
  • Preview — hear any song before playing
  • Leaderboard — scores saved locally
  • Settings persistence — speed, volume, gamepad mapping, hidden items all saved to localStorage
  • Math-protected reset — Reset All Data requires solving a math problem to prevent accidents

Song List

Nursery Rhymes (15 songs)

  • Twinkle Twinkle Little Star (Traditional, 1760s)
  • Mary Had a Little Lamb (S.J. Hale, 1830)
  • Happy Birthday (P.S. Hill, 1893)
  • Hot Cross Buns (English, 1798)
  • London Bridge Is Falling Down (English, 1744)
  • Old MacDonald Had a Farm (English, 1706)
  • Row Row Row Your Boat (English, 1852)
  • Three Blind Mice (English, 1609)
  • Itsy Bitsy Spider (English, 1910s)
  • Pop Goes the Weasel (English, 1850s)
  • Chopsticks (Euphemia Allen, 1877)
  • Lavender's Blue (English Traditional, 1670s)
  • Shortnin' Bread (Traditional, 1900s)
  • Jack and Jill (English, 1765)
  • Humpty Dumpty (English, 1797)

Singalong (20 songs)

  • Drunken Sailor (Sea Shanty)
  • Wellerman (NZ Sea Shanty, 1860s)
  • Molly Malone (Irish, 1880s)
  • Whiskey in the Jar (Irish Traditional)
  • The Parting Glass (Irish/Scots Traditional)
  • Leave Her Johnny (Sea Shanty)
  • Blow the Man Down (Sea Shanty)
  • Randy Dandy Oh (Sea Shanty)
  • South Australia (Sea Shanty)
  • Roll the Old Chariot Along (Sea Shanty)
  • Haul Away Joe (Sea Shanty)
  • Spanish Ladies (Royal Navy, 1790s)
  • The Skye Boat Song (Scottish, 1884 — Outlander)
  • Bella Ciao (Italian Partisan Folk — Money Heist)
  • Amazing Grace (1779)
  • Auld Lang Syne (1788)
  • When the Saints Go Marching In (Spiritual)
  • Oh My Darling, Clementine (1884)
  • Scarborough Fair (English Medieval)
  • My Bonnie Lies Over the Ocean (Scottish, 1881)

Christmas (17 songs)

  • Jingle Bells (1857)
  • Silent Night (1818)
  • Deck the Halls (1862)
  • We Wish You a Merry Christmas (1500s)
  • O Christmas Tree (1824)
  • The First Noel (1823)
  • Joy to the World (1719)
  • Away in a Manger (1885)
  • 12 Days of Christmas (1780)
  • Hark the Herald Angels Sing (1840)
  • O Come All Ye Faithful (J.F. Wade, 1743)
  • God Rest Ye Merry Gentlemen (English, 1500s)
  • What Child Is This (English, 1865)
  • Angels We Have Heard on High (French, 1862)
  • O Holy Night (A. Adam, 1847)
  • Good King Wenceslas (Finnish, 1582)
  • We Three Kings (J.H. Hopkins Jr., 1857)

Folk (8 songs)

  • Oh! Susanna (Stephen Foster, 1848)
  • Greensleeves (English, 1580)
  • Camptown Races (Stephen Foster, 1850)
  • Red River Valley (American, 1870s)
  • Home on the Range (American, 1870s)
  • Yankee Doodle (American, 1770s)
  • Turkey in the Straw (American, 1820s)
  • Danny Boy (Irish, 1910s)

Spirituals (8 songs)

  • Swing Low, Sweet Chariot (1862)
  • Go Down Moses (Traditional)
  • Wade in the Water (Traditional)
  • Kumbaya (Traditional)
  • Michael Row the Boat Ashore (1860s)
  • He's Got the Whole World (Traditional)
  • Nobody Knows the Trouble I've Seen (Traditional)
  • Battle Hymn of the Republic (1861)

World (8 songs)

  • Hava Nagila (Jewish/Israeli, 1918)
  • La Cucaracha (Mexican Traditional)
  • Frere Jacques (French, 1780s)
  • Cielito Lindo (Mexican, 1882)
  • Waltzing Matilda (Australian, 1895)
  • 'O Sole Mio (Italian, 1898)
  • Take Me Out to the Ball Game (American, 1908)
  • She'll Be Coming Round the Mountain (American, 1890s)

Ragtime (8 pieces)

  • The Entertainer (Scott Joplin, 1902)
  • Maple Leaf Rag (Scott Joplin, 1899)
  • The Easy Winners (Scott Joplin, 1901)
  • Elite Syncopations (Scott Joplin, 1902)
  • Solace (Scott Joplin, 1909)
  • Peacherine Rag (Scott Joplin, 1901)
  • The Cascades (Scott Joplin, 1904)
  • Pineapple Rag (Scott Joplin, 1908)

Classical (24 pieces)

  • Beethoven's 5th (Opening)
  • Hall of the Mountain King (Grieg)
  • Ride of the Valkyries (Wagner) — Apocalypse Now
  • Mars, Bringer of War (Holst)
  • Toccata & Fugue in D Minor (Bach)
  • William Tell Overture — Gallop (Rossini) — The Lone Ranger
  • Bolero (Ravel)
  • Also Sprach Zarathustra (R. Strauss) — 2001: A Space Odyssey
  • Barber of Seville Overture (Rossini) — Bugs Bunny
  • The Blue Danube (J. Strauss II) — 2001: A Space Odyssey
  • Night on Bald Mountain (Mussorgsky) — Fantasia
  • Sorcerer's Apprentice (Dukas) — Fantasia
  • Swan Lake Theme (Tchaikovsky)
  • Morning Mood (Grieg)
  • Flight of the Bumblebee (Rimsky-Korsakov)
  • Dance of the Sugar Plum Fairy (Tchaikovsky)
  • 1812 Overture Finale (Tchaikovsky)
  • Habanera from Carmen (Bizet)
  • Spring from Four Seasons (Vivaldi)
  • Fur Elise (Beethoven)
  • Canon in D (Pachelbel)
  • Hungarian Dance No. 5 (Brahms)
  • Ode to Joy (Beethoven)
  • William Tell Overture — Storm (Rossini)

Video Games (5 pieces)

  • Korobeiniki / Tetris Theme (Russian Folk, 1861)
  • Turkish March (Mozart)
  • Hungarian Rhapsody No. 2 (Liszt)
  • Can-Can (Offenbach)
  • Kalinka (Russian Folk, 1860)

Chiptune Originals (6 pieces, composed by Claude.ai)

  • Pixel Quest (Platformer)
  • Starfield (Space Shooter)
  • Dragon's Keep (RPG Overworld)
  • Turbo Dash (Racing)
  • Dungeon Crawl (Dark Adventure)
  • Victory Fanfare (Boss Defeated)

Drum Patterns (120 patterns)

  • Rock (15): Basic Rock, Classic Rock, Punk Rock, Arena Rock, and more
  • Metal (15): Double Bass, Thrash, Doom Metal, Blast Beat, and more
  • Jazz (15): Jazz Ride, Bebop, Bossa Nova, Fusion, and more
  • Hip Hop (15): Boom Bap, Trap, Lo-Fi, Drill, and more
  • Funk (15): Classic Funk, Ghost Notes, P-Funk, Afrobeat, and more
  • Latin (15): Samba, Salsa, Reggaeton, Cumbia, and more
  • Electronic (15): Four on the Floor, Breakbeat, DnB, Dubstep, and more
  • Country (15): Two-Step, Bluegrass, Rockabilly, Gospel, and more

USB Drum Kit Compatibility

The Gamepad API works with any USB controller. Use the Remap Pads button to configure your kit.

Kit Connection
Wii Rock Band drums USB dongle (default mapping)
Xbox 360 Rock Band drums USB wired
PS3/PS4 Rock Band drums USB
Guitar Hero drums USB
Roland/Alesis/Donner USB-MIDI adapter
Any USB gamepad Remap to configure

Data Storage

All data is saved to localStorage in your browser — nothing is lost when you close the page.

Key What's Stored How to Clear
drgame5 Leaderboard scores Clear button on Leaderboard
drgameSettings Speed + volume Reset button in Settings
drgameGpMap Gamepad button mapping Reset All Data
drgameHidden Hidden genre tabs Right-click → Show All
drgameHiddenSongs Hidden songs per genre Show N hidden button

Reset All Data clears everything but requires solving a math problem first.

Synthesizer

All sounds are generated in real-time using the Web Audio API — no audio files needed:

Sound Method
Kick Sine oscillator, 180Hz to 40Hz sweep
Snare Highpass noise burst + 180Hz tone
Hi-hat Highpass noise burst, very short
Toms Sine oscillator pitch sweep
Crash Long noise burst, wide frequency
Ride Metallic ping, bandpass filtered
Strings Sawtooth + lowpass filter
Brass Square + lowpass filter
Woodwind Triangle oscillator
Bass Sine oscillator, low frequency
Timpani Sine frequency sweep
Choir Multiple detuned sine oscillators
Chiptune Square wave with pulse bass

Tech

  • Pure vanilla JavaScript — no libraries, no build step, no server
  • Single index.html file (~4850 lines)
  • Web Audio API for all sound synthesis
  • Canvas 2D for the note highway
  • Gamepad API for drum kit input
  • localStorage for all persistent data
  • Works on Windows, Linux, and Mac

Hosting

No server is required to play, but if you want it reachable at a URL, a Dockerfile + docker-compose.yml are included to serve index.html from nginx in a container, plus a DEPLOYMENT.md with a Caddy 2 reverse-proxy config for putting it behind an FQDN with automatic HTTPS.

License

MIT

Disclaimer

Rock Band is a trademark of Harmonix Music Systems. Guitar Hero is a trademark of Activision Publishing. Wii is a trademark of Nintendo. Xbox is a trademark of Microsoft. PlayStation is a trademark of Sony Interactive Entertainment. This project is not affiliated with, endorsed by, or connected to any of these companies. All trademarks are the property of their respective owners and are used here solely for hardware compatibility reference.

S
Description
Mirror of outis1one/drum-rhythm-game from GitHub
Readme MIT
3.2 MiB
Languages
HTML 100%