Skip to content

mpacholski/ABCompose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ABCompose

ABCompose is a lightweight toolkit designed to integrate AI agents and automated workflows into music composition, arrangement, and engraving. By providing automated environment setup and straightforward shell scripts, the project converts generated ABC music notation files (.abc) into the standard MusicXML format (.xml). This allows the output to be natively imported, edited, and formatted in popular scoring software such as MuseScore, Dorico, and Sibelius.

Initial Setup

Before converting any files, set up the local environment. This script creates a local Python virtual environment, installs the required packages, and downloads the abc2xml conversion tool.

Run these commands in the terminal from the project folder:

chmod +x setup.sh
./setup.sh

Directory Structure

  • Place all source .abc sheet music files into the src/ directory.
  • Compiled .xml files are automatically generated and saved in the out/ directory.

Compiling the Files

To compile a .abc file, provide its path as an argument to the ./build.sh script. The output will be saved in the out/ directory. Example:

./build.sh src/twinkle_bass.abc

This project includes pre-configured VS Code tasks (.vscode/tasks.json). Use the Build keyboard shortcut (default Cmd+Shift+B) to compile the .abc file currently active in the editor.

Convert to PNG

To convert a .abc file to .png, provide its path as an argument to the ./converters/abc2png.py script. The output will be saved in the out/ directory. Example:

./.venv/bin/python3 ./converters/abc2png.py src/twinkle_bass.abc

or use VS Code Build task to convert the active file. The conversion requires MuseScore installed and setup correctly, and produces .musicxml file as a byproduct of the process.

Recommended Extension

If using Visual Studio Code, install the ABC Music Notation extension. It provides syntax highlighting and sheet music previews for .abc files.

About

Toolkit designed to integrate AI agents into music composition and engraving

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors