Skip to content

Latest commit

ย 

History

History
153 lines (104 loc) ยท 2.4 KB

File metadata and controls

153 lines (104 loc) ยท 2.4 KB

๐ŸŽน KeyWave Piano

KeyWave Piano is a modern, interactive browser-based piano built using HTML, CSS, and JavaScript. It allows users to play music using their keyboard or mouse, while also offering guided learning, quizzes, and multiple sound controls.


๐Ÿš€ Features

๐ŸŽน Real-Time Piano

  • Play notes using keyboard keys or mouse clicks
  • Smooth and responsive sound playback
  • Visual key animations for better feedback

๐ŸŽ“ Learn Mode

Interactive learning system with 3 modes:

๐ŸŽต Song Mode

  • Learn popular songs like:

    • Twinkle Twinkle โญ
    • Happy Birthday ๐ŸŽ‚
    • Ode to Joy ๐ŸŽผ
  • Step-by-step note guidance

  • Auto-play option for demonstration

  • Progress tracking system


๐Ÿ“– Free Learn Mode

  • Displays:

    • Note name
    • Keyboard key
    • Finger hint
    • Frequency (Hz)
  • Quick reference chart for octave mapping


โ“ Quiz Mode

  • Test your musical skills

  • Score + streak tracking ๐Ÿ”ฅ

  • Difficulty levels:

    • Easy
    • Medium
    • Hard
  • Replay note option


๐ŸŽ›๏ธ Controls

  • Octave Control โ†’ Change pitch range

  • Volume Control โ†’ Adjust sound level

  • Waveform Selection:

    • Sine
    • Triangle
    • Square
    • Sawtooth
  • Sustain Control โ†’ Adjust note duration


๐ŸŽจ UI Highlights

  • Clean modern interface
  • Animated glowing effects
  • Responsive design
  • Real-time visual feedback

โŒจ๏ธ Keyboard Mapping (Octave 4)

Note Key
C4 A
D4 S
E4 D
F4 F
G4 G
A4 H
B4 J

Black Keys:

Note Key
C#4 W
D#4 E
F#4 T
G#4 Y
A#4 U

๐Ÿ“ Project Structure

KeyWave-Piano/
โ”‚
โ”œโ”€โ”€ index.html
โ”œโ”€โ”€ style.css
โ”œโ”€โ”€ script.js

๐Ÿ› ๏ธ Technologies Used

  • HTML5
  • CSS3 (Animations + Layout)
  • JavaScript (DOM + Audio Logic)

โšก How to Run

  1. Download or clone the repository
  2. Open index.html in your browser
  3. Start playing ๐ŸŽน

๐Ÿ’ก Future Improvements

  • Recording & playback system
  • Custom sound packs (piano, drums, synth)
  • Mobile gesture optimization
  • Save user progress

๐Ÿง  Author

Built by Anoop A


โญ Final Note

This project is designed to combine music, interaction, and learning into one smooth experience. If you like it, consider improving it further or adding new features ๐Ÿš€