Tonal.js: Functional music theory lib

tonal is a music theory library that offers functions to manipulate elements such as notes, intervals, chords, scales, modes, and keys in a Typescript implementation published as Javascript npm packages. It follows a functional programming style with pure functions that do not mutate data. Examples include converting notes to MIDI, getting frequencies, working with chords and scales, and more. The library is compatible with both ES5 and ES6 modules, and can be used in the browser directly. It includes various modules for different musical operations like note operations, interval operations, scales, chords, voice leading, chord progressions, and more. Contributions are welcome with specific guidelines provided. Inspired by other music theory libraries, tonal is used in various music projects showcased in the community. The library is licensed under the MIT License.

https://github.com/tonaljs/tonal

To top