Project notebook / 2026
BPM Finder
An in-browser audio tool that detects musical tempo (BPM) in real time using WebAssembly and Essentia.js.
What is BPM Finder?
BPM Finder is an audio tool that calculates the exact tempo (Beats Per Minute) of any song directly within the web browser.
It is useful for DJs, music producers, and musicians who need to know a track's tempo for mixing or synchronization.

How It Works
- Client-Side Privacy: The audio file is never sent to a remote server.
- WebAudio Decoding: The browser's native audio engine decodes the sound file in memory.
- WebAssembly Signal Processing: Essentia.js extracts onset strengths and evaluates rhythmic periodicity to calculate the BPM.
- Timing Table: Converts the detected BPM into note durations in milliseconds for setting up delay and reverb plugins.
Tech Stack
- Frontend: React, Vite, Tailwind CSS
- Audio Engine: Essentia.js (WebAssembly)
- APIs: WebAudio API