Skip to content

danielleackerman/piano-exercise-matrix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Piano Exercise Matrix

🎹 Project Description

The Piano Exercise Matrix is a web-based application designed to help piano students and enthusiasts organize practice and track it. It provides a dynamic matrix of balanced technical exercises based on your selected keys and scales, a piano visualiser to display and play scales, and a practice log to keep track of progress and print if you want.

🚀 Live Demo

You can try out the Piano Exercise Matrix live https://danielleackerman.github.io/piano-exercise-matrix/

(I will add more detail here about my vision for the Piano Exercise Matrix becoming a multi-instrument and songwriting tool later).

✨ Features

  • Dynamic Exercise Matrix: Generates a table of relevant piano exercises based on user-selected musical keys and scale types.
  • Scale Visualizer:
    • Displays selected scales on a visual piano keyboard.
    • Supports a comprehensive list of root notes (including enharmonics) and scale types (major, minor, modes, etc.).
  • Interactive Controls:
    • Dropdowns to select root notes and scale types for the visualizer.
    • "Play Scale" button to update the piano display.
    • "Update Matrix" button to populate the exercise table based on the visualizer's current key selection.
  • Detailed Exercise Table:
    • Lists exercises with options for Tempo, Metronome Click Pattern, BPM, Rhythm Pattern, Subdivision, and practice Time (Hours/Minutes).
    • Hierarchical display of exercise names (Key / Base Exercise / Parenthetical details).
    • Customizable Metronome settings to record.
  • Practice Logging:
    • Log exercises directly from the matrix row, capturing all selected parameters.
    • Manual practice log for free-form entries.
    • Persistent practice history stored in localStorage.
    • Ability to delete individual practice log entries.
    • Print functionality for the practice history.
  • User-Friendly Interface: Clean layout with distinct sections for visualization, matrix, and practice tracking.

🛠️ Technologies Used

  • HTML5
  • CSS3 (including Flexbox for layout)
  • JavaScript (ES6+) - Vanilla JS, no external frameworks for core logic yet.

🚀 How to Run Locally

  1. Clone this repository or download the files.
  2. Ensure you have index.html, style.css, and script.js in the same project folder.
  3. Open index.html in any modern web browser (e.g., Chrome, Firefox, Edge, Safari).

🔮 Future Plans (Examples)

✔️ Integrate Tone.js for audio playback of scales and exercises.

  • Integrate VexFlow for sheet music display of scales and exercises.
  • Develop a more advanced calendaring system for practice tracking.
  • Expand to include a "Vocal Exercise Matrix."
  • Add a "Songwriting and Story" module with relevant datasets.
  • Refine table column widths and overall UI based on further testing.

📝 Notes

This project started as a CodePen experiment and is being developed further. It's a learning project focused on building a useful tool for musicians.


(Optional: Add License section if you make it public and want to specify usage rights) (Optional: Danielle/contact me)

About

A web application for piano practice exercises, scales visualization, and piano exercise tracking.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors