morse rhythm

This is a proof-of-concept of a game idea that I wanted to try making for a while: A rhythm game that kinda teaches morse code.

How it works:

  1. Music plays synchronized with a target phrase you need to recreate
  2. Visual cues scroll across the screen, showing you when to tap
  3. Tap the button (or press spacebar) to the rhythm to emit sounds
  4. Your taps create dits and dahs that get decoded as Morse code
  5. The Morse code is translated to letters and scored against the target phrase

It’s very unpolished (only two songs, no end screen) but hopefully demonstrates the game mechanics.

Submitted to Unpolished Jam #4.

Post-game jam updates:

Here are some updates to the game, now that the game jam is over:

  • 2025-11-05 (v1.3):
    • Added Exit and Replay buttons during gameplay
    • Added support for LCtrl (Dit) and RCtrl (Dah) keys and using right mouse buttons on the Dit and Dah buttons, matching morsecode.world keyer behavior.
    • Improved visual feedback in Hard Mode, showing the starting time of each letter
  • 2025-10-27 (v1.2):
    • Added a third and fourth levels:
      • ABC (morse code ver) — short song (1 minute)
      • Ophelia's Song — dynamic level
    • On keyboard, you can now press other keys to Tap; not only Spacebar.
    • Level duration and speed (measured in words-per-minute) is displayed.
  • 2025-10-22 (v1.1):
    • Added a second level, Intergalactic Bliss (Trance Mix)
    • This level is faster and is an alphabet drill, to help you remember the alphabets and learn to tap faster.
    • Iambic keyer mode
      • This mode adds "." and "-" buttons to the game.
      • Holding down the "." button sends a continuous stream of dits.
      • Holding down the "-" button sends a continuous stream of dahs.
      • Holding down both buttons sends alternating dits and dahs signals.
      • Keyboard: Use ArrowLeft for "." and ArrowRight for "-".
    • The score is now highlighted after the level ends.

Controls:

  • Mouse/Touch: Press the "Tap" button
  • Keyboard:
    • Hold down the Spacebar or other keyboard keys to emit a morse code signal.
    • Iambic keyer:
      • Hold down ArrowLeft, Z, or Period to send a continuous stream of dits.
      • Hold down ArrowRight, X, or Slash to send a continuous stream of dahs.
      • Hold down both buttons to send alternating dits and dahs signals.

Hard mode:

  • There's a hard mode where the visual cues only shows the character you need to tap as Morse code signal, hiding the dits and dahs. For people who memorized the Morse code.

Song used:

Tech stack:

  • React
  • Nano Stores
  • HTML5 2D Canvas
  • Web Audio API

Source code:

StatusReleased
PlatformsHTML5
Rating
Rated 4.9 out of 5 stars
(9 total ratings)
Authordtinth
GenreRhythm
Tagsmorse-code
Average sessionA few minutes
LanguagesEnglish
InputsKeyboard, Mouse, Touchscreen
LinksGitHub

Development log

Comments

Log in with itch.io to leave a comment.

how do i quit to the main menu

For now you can press the "Back" button on your browser - if I got time I might get around to implementing this properly.

v1.3 released with Exit and Replay buttons

(+1)

https://youtu.be/3jKTfnsR7Ko?si=2uKyA_F-rwfS9hhF

That's an awesome play, and on straight keys! Thanks for sharing

(+1)

(+2)

the abc track is soo good

i heccing LOVE THIS SO MUCH


THANK YOH THANK YOU

THIS SCRATCHES AN ITCH IN MY BRAIN I DIDNT KNOW I HAD

AAA 💕 💕 💕 

(+1)

i love this game, the problem is that it keeps detecting single words as separate and turning it into something different

lots and lots of potential here.

This game is super cool! It would be cooler if you can change the scroll speed (can't read with scroll this slow lol) but I really like the concept!

One day later..,,,

(+1)

I’m finally able to create a readable text! Thank you for teaching me Morse code :D

(+1)

WOW this is hard

abysmal scores on my end but the experience was still very fun :]

i agree

(+4)

Found on YouTube. There is something incredible going on here. I think this is the foundation of a great educational game. I don’t know Morse, so I have a lot of trouble translating the visual cues into rhythms. (My scores were horrible!) But playing a rhythm by ear is much easier than sightreading. I would love if there were an audio layer in there that always played the correct rhythm so I could just “play along.” I think that would really help me learn!