CrateMate
A command-line tool for turning a messy music downloads folder into a tagged DJ library.
- Type
- Personal project
- My role
- Creator & developer
- Built with
- Python

Keeping the right mix
A clean DJ library needs more than an artist and a title. Remixes and extended mixes can end up tagged as the original version when matched against a catalog, losing the details that distinguish one track from another. CrateMate keeps the mix information already in the filename while organizing the downloads folder.
Designing and building the tool
CrateMate is a solo project, designed and built in Python. My work covered defining the scope, building the import workflow, and adding tools for maintaining the library.
From filenames to a tagged library
The filename is the starting point for artist, title, and mix details. The import flow then looks up cover art and metadata, writes clean tags, and copies the track into the DJ library. Mix information is preserved, and the original file stays in place during import.
The library tools handle missing covers and tags, duplicate tracks, FLAC conversion, and optional AI-assisted tagging.

Less time fixing tags
CrateMate is part of my music preparation workflow. Keeping the right mix information during import means less time correcting tags and less frustration when organizing tracks for a DJ set.
The tool is also available as an installable package on PyPI, with the source code on GitHub.