Bach Progression Finder

A web application to search for chord progressions from Bach chorales, going from one stationary chord to another.

How it works

music21 corpus chorales ✄ 📊 tab-separated .txt ✎ .musicxml (scamp & pymusicxml) verovio ⇒ 🎼

Progression fragments are extracted using the music21 library by cutting between fermata notes and writing them to a tab-separated text file.

Each fragment is then written to a .musicxml file using the scamp & pymusicxml libraries.

Music notation is rendered in the browser using the verovio library.

Source code

https://github.com/ayk-caglayan/bach_progressions

Notes

Please use Firefox or Chrome for best compatibility.

Some keys are encoded as their enharmonic equivalents: search for C# rather than D♭, or Ab rather than G#.