Overview
Abjad is a powerful, open-source framework built in Python for creating and manipulating complex music notation. It provides a symbolic representation of musical elements, including notes, rests, chords, tuplets, beams, and slurs, allowing composers to construct scores in an iterative and incremental manner. Extending the Python programming language, Abjad enables users to make systematic changes to their music, while wrapping the LilyPond music notation package ensures precise control over the typographic details of the rendered score. Abjad targets composers, music theorists, and anyone seeking a programmable environment for music notation. It requires Python 3.12 and LilyPond 2.25.26 (or later).