🎹 KeyFindr
KeyFindr is one of my earliest projects (built in 2020) — a fully interactive, one-octave piano written entirely in HTML, CSS, and vanilla JavaScript. It’s designed to help musicians and producers explore scales, chords, and key relationships visually and intuitively.
🚀 Features
-
Dynamic Piano Visualization: A one-octave piano rendered in HTML that highlights notes dynamically based on user input.
-
Key and Scale Selection: Choose a root note ('A–G') and a scale type (Major, Minor, Blues, or Harmonic Minor). The app highlights all notes belonging to that key directly on the piano.
-
Chord Highlighting: Displays the chords within the selected key — for example, if you’re “in the key of E♯,” you’ll see the I, IV, and V chords highlighted for quick reference. Perfect for understanding progressions like 1–4–5 and building riffs or melodies that fit naturally within the scale.
-
Scale Playback: Plays the entire selected scale automatically so you can hear the tonality and intervals clearly.
-
Learn by Doing: Built as a visual learning tool for myself when I was studying music theory, it’s since become a fun way to reinforce scale and chord knowledge — hands-on and intuitive.
🎧 Background
In 2020, I developed KeyFindr while teaching myself music theory. After just a few weeks of learning, I built this app to bridge the gap between theory and intuition — letting me see and hear how different keys and chord progressions work.
Even now, KeyFindr continues to help me explore new scales, chords, and progressions that I haven’t yet memorized.
🛠️ Tech Stack
- HTML5
- CSS3
- Vanilla JavaScript
No frameworks. No libraries. 100% hand-coded.
🎯 Purpose
KeyFindr is more than a piano — it’s a visual and auditory tool for learning and creating music. Whether you’re experimenting with chord progressions or trying to understand how different keys interact, KeyFindr provides an immediate, interactive way to feel music theory in action.