This is a JS web app, available at bradwave.github.io/PianoFreq.
It can be used as an educational tool for explaining musical temperament.
The horizontal line represents the frequency spectrum spanning an octave from f to 2f. Keys can be moved around and tuned accordingly to their position on the frequency line. They can also be played by clicking on them or via the computer keyboard by pressing the corresponding key.
Graphics and sound are handled with p5.js and Tone.js respectively.
This software is part of a project for the course Matematiche Elementari dal Punto di Vista Superiore ("Elementary Mathematics from the Superior Point of View") from the Master Degree in Mathematics of the University of Turin, Italy.