Skip to main content

Mike's Opinionated Music Tagger

Project description

Mike's Opinionated Music Tagger

Opinions are like arseholes. Everyone's got one, and they all stink.

What is this?

A tool for:

  • recursing a convention of folders and files
  • parsing artist, album, and track details from the folder and file names
  • finding and processing cover art files
  • applying everything as a standard set of tags to your music files

It basically keeps a small collection of music reasonably and consistently organized.

  • Every Artist in your collection gets a folder in your Music library. How you name them is up to you. If you prefer "Who, The", that's fine.

  • Every Album in an Artists catalogue gets a folder in the Artist's folder. These are named with:

    • a 4-digit year,
    • a space, a hyphen, and a space,
    • then the Album's title.
  • Every Track on an Album gets a file in the Album's folder. These are named with:

    • a 1–3-digit track number with zero padding if you like,
    • a space, a hyphen, and a space,
    • then the Track's title.

Why?

I like to purchase my music as MP3s from stores like Bandcamp. Not everyone uploads their music with well-formatted metadata, and some music labels seem to see fit to use the metadata tags to advertise things like their websites. Our car has a USB port in its infotainment system which handles navigation by folder and file name but then displays the tags on the dash display. The inconsistency really gets on my nerves, but running adverts on songs I've already paid for is simply unacceptable.

What is this not?

  • A tool for maintaining your carefully curated library of original files.

    This will delete all the tags from your files and replace them with a basic, standard set of tags. Any special metadata you have saved in there will be lost. Keep a copy of your original files somewhere else.

  • A tool for tagging your FLACs and your Ogg Vorbis files.

    My car doesn't play Ogg Vorbis, so that won't be supported. Honestly, if you can tell the difference between V0 MP3s and FLACs while driving, you're probably doing it wrong, and probably twice.

    You probably want Strawberry Music Player instead.

Installation

Debian

TODO: Once we've built the Debian package.

pipx or uvx

If you just want to run the command once, skip to the "Running/pipx or uvx" section. Alternatively, you can install momtag globally with pipx:

$ pipx install momtag

Running

Debian

TODO: Once we've built the Debian package.

pipx or uvx

If you installed momtag globally with pipx or uvx, you can run it like this:

$ momtag --dry-run --verbose ~/Music

If you just want to run it without installing it globally, you can use pipx or uvx to run it:

$ pipx run momtag --dry-run --verbose ~/Music

License

Documentation

momtag's Documentation (C) 2025 by Mike Coats is licensed under Creative Commons Attribution 4.0 International.

Source Code

momtag - Mike's Opinionated Music Tagger

Copyright (C) 2025 Mike Coats i.am@mikecoats.com

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

momtag-0.1.1.tar.gz (433.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

momtag-0.1.1-py3-none-any.whl (26.1 kB view details)

Uploaded Python 3

File details

Details for the file momtag-0.1.1.tar.gz.

File metadata

  • Download URL: momtag-0.1.1.tar.gz
  • Upload date:
  • Size: 433.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for momtag-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b99b271ecdf979903ea2ff1974082bf819ac00685bcf2edc48d2c39b68ba9acd
MD5 feaa0d4febfcfac6f352d832e1954237
BLAKE2b-256 49b864540928655246adcf38f79099df9d9db983bfe3bb72442361ac99255c89

See more details on using hashes here.

File details

Details for the file momtag-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: momtag-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 26.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for momtag-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 37c9afe934fc910f018441fd395b0dc1b2613c412616a5b775e6aa0cfc3034cd
MD5 0711cc9743b24869bf09849c74679381
BLAKE2b-256 191fd1e3b61a9ff49ee650904116864a56d6c698d0eeef51093610b0fdb5341a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page