This web application has been developed for ear training. Intervals are played, which then have to be identified by ear.
A piano sound is artificially generated using additive sound synthesis and envelopes. The application is implemented with Vue.js and the Mozilla Web Audio API.
The application can be run here.