Skip to content

Project structure#

backingtrack/
├── backingtrack/
│   ├── cli.py         # commands
│   ├── gui.py         # GTK 4 / libadwaita graphical editor
│   ├── songfile.py    # editor model: validation, progression templates, YAML
│   ├── i18n.py        # language: _(), English by default, editor preference
│   ├── locale_en.py   # English translations
│   ├── data/          # app icon
│   ├── song.py        # YAML reading, bars, arrangement
│   ├── theory.py      # chords, voicings on the strings, scales, CAGED, scale suggestions
│   ├── grooves.py     # guitar and drum patterns
│   ├── arranger.py    # chords → notes (strums, swing, fills, humanization)
│   ├── sfz.py         # SFZ and WAV reader
│   ├── render.py      # numpy sampler
│   ├── mixer.py       # amp, EQ, reverb, loudness (ffmpeg)
│   ├── packs.py       # selective sample download
│   └── midi.py        # MIDI export
├── examples/          # example songs (blues, rock, rockabilly, country, bluegrass, jazz)
├── docs/              # it/ and en/ documentation, images, make_docs.py, make_images.py
├── tests/             # python -m unittest discover tests
├── install.sh         # Linux/macOS installer
├── install.ps1        # Windows installer
└── pyproject.toml