A precise metronome for the struggling guitarist (such as myself). This app is built on the Web Audio API. No plugins required!

120

BPM

Allegro

What is a Metronome?

A metronome is a device that produces a steady pulse to help musicians play in time. The pulse is measured in beats per minute (BPM). A higher BPM means a faster tempo.


The mechanical metronome was patented by Johann Nepomuk Mälzel in 1815 and quickly became an essential tool for composers and performers. Ludwig van Beethoven was among the first major composers to add metronome markings to his scores.


Here are some common Italian tempo markings and their approximate BPM ranges, because yelling “faster, faster!” across the room will not get me a music degree:


Largo — very slow (40 to 60 BPM)

Andante — walking pace (76 to 108 BPM)

Moderato — moderate (108 to 120 BPM)

Allegro — fast (120 to 156 BPM)

Presto — very fast (168 to 200 BPM)

Prestissimo — Usain Bolt speed (200+ BPM)


This metronome is built using a lookahead scheduler. It schedules audio events slightly ahead of time on the hardware clock, avoiding the timing jitter that plagues JavaScript's native setTimeout. No drift, no problemo!

 Projects Home
GitHubLinkedInScholarYouTubeYouTubeTwitterThreads

© 2026 Zi Huang. All Rights Reserved.