Dev.to WebDev šŸ›  Dev šŸ‘ 1

Morse Code Converter — Text to Morse with Web Audio Playback

Overview Morse Code Converter encodes text to Morse code and decodes Morse back to text, with real audio playback. šŸ”— https://devnestio.pages.dev/morse-code/ Features Text → Morse: all letters (A–Z), digi

Overview

Morse Code Converter encodes text to Morse code and decodes Morse back to text, with real audio playback.

šŸ”— https://devnestio.pages.dev/morse-code/

Features

  • Text → Morse: all letters (A–Z), digits (0–9), punctuation
  • Morse → Text: decodes dot/dash sequences; / for word breaks
  • Audio playback via the Web Audio API with smooth tone fade-in/out
  • Adjustable WPM: 5–40 words per minute (PARIS standard)
  • Visual flash: indicator pulses in sync with audio
  • Reference table: all 36 character codes visible at a glance

Example

SOS → ... --- ...
HELLO WORLD → .... . .-.. .-.. --- / .-- --- .-. .-.. -..

Tech: sample-accurate audio scheduling

Timings use the Web Audio API scheduler rather than setTimeout, giving sample-accurate playback:

gain.gain.linearRampToValueAtTime(0.5, t + 0.005);    // fade in
gain.gain.setValueAtTime(0.5, t + dur/1000 - 0.005);  // sustain
gain.gain.linearRampToValueAtTime(0, t + dur/1000);   // fade out

Dot duration = 1200 / WPM ms (PARIS standard). Dash = 3Ɨ dot. Letter gap = 3Ɨ dot. Word gap = 7Ɨ dot.

šŸ‘‰ Try it: https://devnestio.pages.dev/morse-code/

šŸ“° Read the original article on Dev.to WebDev

Originally published by Dev.to WebDev. Aggregated on AIWithGhost for educational purposes — full credit and traffic to the original publisher.