Work with musical concepts
This package allows you to work with concepts in tonal music like pitches, intervals, chords, keys, and scales. You can use it to analyze music, generate musical structures, and solve musical problems like harmonization and counterpoint.
It is built with these goals in mind:
Source code for these examples can be found in the /examples
directory of this repo:
New to music theory? I can recommend these resources:
Interested in contributing to this project? Please take a look at the contributing guidelines for this repo for ways to do so.
Thanks to Leif Battermann (@battermann) for collaborating with me on early versions of some of the designs that are central to this package.
Thanks to my friend and colleague Matthew Griffith (@mdgriffith) for his advice and encouragement. This package was designed better (and released sooner) because of him.