ALFA (Ableton Live File Analyzer) is a desktop app that analyzes and version-controls Ableton Live projects.
- Browse tracks, devices, racks, samples, and plugin parameters without opening Ableton.
- Diff: Check added/removed tracks and devices, and changed parameter values between snapshots.
- Find and play any sample used in your project, and save favorite track chain to a library.
- Download the latest
ALFA-Setup-X.X.X.exefrom the Releases page. - Run the installer and launch ALFA.
Currently only Windows 64-bit builds are provided.
⚠️ The app is not code-signed, so Windows SmartScreen may warn on first launch — click More info → Run anyway.Your projects and snapshots will be stored in
Documents\ALFA.
- Full track list (volume, pan, mute), group structure, and plugin chains
- Rack - Instrument / Audio Effect / Drum / MIDI Racks, including nested chains and macros
- Find Sample across the whole project, with missing-file detection
- Check added/removed tracks and devices, changed parameter values between snapshots.
- Keep favorite sounds and their device chains.
I started this project because opening Ableton every time just to check plugins and samples was too inconvenient.
This is still an early version. Some features are still in development and may lack polish. I plan to keep refining the UI and expanding plugin/device support.
The app has been tested as much as possible, but bugs may still exist. If you find any issues or have suggestions, feel free to open a Discussion or reach out directly.
- Language: Python 3.12
- GUI: PySide6
- Parsing:
lxml,zstandard+cbor2 - Environment: uv
- Distribution: PyInstaller + Inno Setup 7 installer
src
├── app.py # Entry point
├── core
│ ├── als_extractor.py # .als (gzip + XML) → snapshot data, recursive rack traversal
│ ├── diff.py # Snapshot diff engine (exact / coarse / info tiers)
│ ├── snapshot_manager.py # Project & snapshot storage under Documents/ALFA
│ └── plugin_parsers # fabfilter, xfer, valhalla, waves, generic...
└── ui
├── main_window.py
├── screens # Home / Project Detail
├── tabs # Browse, Tracks, Samples, Snapshots, Diff
├── translations # ko.json, en.json
├── widgets # AudioPlayer, SampleList, SearchBar, icons..
└── i18n.py # JSON catalogs + retranslate_ui pattern
Requirements: Python 3.12+, uv
git clone https://github.com/hemisus/alfa.git
cd alfa
uv sync
uv run python src/app.py# 1. Build the app (output: dist\ALFA\ALFA.exe)
uv run pyinstaller ALFA.spec --noconfirm
# 2. Build the installer (output: installer_out\ALFA-Setup-X.X.X.exe)
& "C:\Program Files\Inno Setup 7\ISCC.exe" installer.issUses PySide6 (Qt for Python) under LGPLv3.
This project is licensed under the MIT License.
- Email: hydro6323@gmail.com
- GitHub: @hemisus
- Discord: hemisus_



