samiul@portfolio:~/projects/musicman$ cat README.md
21 musicman
A terminal tool that files your music into a folder tree using rules over its existing tags.
samiul@portfolio:~/projects/musicman$ cat problem.txt
A downloads folder full of tagged audio still needs sorting by hand, and one-size folder layouts don't fit every genre or era.
samiul@portfolio:~/projects/musicman$ cat build.log
A Python CLI that scans source folders (MP3, FLAC, M4A, Ogg, WAV and more), reads tags with mutagen, and evaluates JSON rules in order. Conditions nest with all/any and support equality, substring, regex, numeric and presence checks; the first match wins. Output paths are templates with format specs like {track:02d}, files can be moved, copied or symlinked, and --dry-run previews everything first. Tag values are sanitised so they can't escape the output directory.
samiul@portfolio:~/projects/musicman$ cat highlights.txt
- Ordered JSON rules with nested all/any conditions
- Path templates with format specs: {track:02d} - {title}{ext}
- Move, copy or symlink, with a dry-run preview
- Path sanitisation so tags can't escape the output tree
samiul@portfolio:~/projects/musicman$ cat stack.toml
# musicman
lang = "python"
tags = "mutagen"
rules = "json, all/any, regex, numeric"
actions = "move / copy / symlink, --dry-run"
stack = ["Python", "mutagen"]
samiul@portfolio:~/projects/musicman$ git remote -v