Featured image of post Ear Training App

Ear Training App

A simple ear training application for practicing interval recognition, built with Svelte 5 and Tone.js

Ear Training App

I built a simple ear training application to help practice interval recognition: ear.provos.org

Recognizing intervals is a fundamental skill for musicians. It helps you feel out melodies, transcribe music by ear, and develop a stronger connection to what you’re hearing. Like most musical skills, it’s a simple exercise that naturally improves with consistent practice.

The app offers two modes: a relaxed practice mode with mnemonic song hints (hear “Star Wars Theme” when you miss a Perfect 5th), and a 60-second challenge mode to test your speed and accuracy. You can customize which intervals to practice, choose between piano, guitar, or violin sounds, and configure the note range. All your settings and statistics persist locally.

I built this with Svelte 5 and Tone.js. Svelte 5 is a modern component framework that makes development remarkably straightforward while remaining powerful and flexible. The whole app came together in a few hours.

The app works well on both desktop and mobile. I’m not sure yet whether I’ll extend it further, but it does what I need for now. If you try it out and find bugs or have feature requests, please reach out.

And if you take the 1-minute challenge on default settings, post your score. I’m curious how others do!

The views expressed on these pages are my own and do not represent the views of anyone else.
Built with Hugo - Theme Stack designed by Jimmy