Skip to main content

convert, tag cover images, and import music files into Apple Music

Project description

Apple Music Import

CI

Script to import any type of music file along with metadata and album art into Apple Music.

Please consider purchasing music you download if you want to support small, weird and independent artists!

Requirements

This has only been tested on MacOS 15.4.1 on Apple M1 Max

Setup

  1. clone this repository locally
  2. run uv pip install -r pyproject.toml to install all packages
  3. run uv run -m src.main to run the script

Configuration

Delete Folder After Import

src/config::DELETE_FOLDER_AFTER_IMPORT - set boolean to determine delete behavior after folder contents are imported.

Music Folders Search Space

src/config::FOLDER_TYPE_GLOB_MAPPINGS - for a given concrete class of AbstractAlbumFolder, set a list of unix-style glob strings that will locate folders that should be processes by said concrete class.

Music Folder Types

You can create new concrete class instances of AbstractAlbumFolder abstract class and place them in src/folder_classes. Each of these classes represent a type of folder containing an album of music files, with or without a cover image. The concrete class can optionally set the name of cover images in the folder (if they exist and have consistent naming), and must specify a method for deleting the folder when the import is done.

Development

Linting

Run uv run ruff check. You can run uv run ruff check --fix to automatically fix linting issues that are fixable.

Run uv run pydoclint . to lint docstrings.

Formatting

Run uv run ruff format.

Commits

This repo contains pre-commit hooks to make sure code passes above lint and format checks, as well as making sure that commit message is formatted as a conventional commit.

Testing

...TBA

Building Wheels

...TBA

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

apple_music_import-0.1.0.tar.gz (11.1 kB view details)

Uploaded Source

Built Distribution

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

apple_music_import-0.1.0-py3-none-any.whl (14.5 kB view details)

Uploaded Python 3

File details

Details for the file apple_music_import-0.1.0.tar.gz.

File metadata

  • Download URL: apple_music_import-0.1.0.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.2

File hashes

Hashes for apple_music_import-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e69aa0d63ce6f1610d87029ad81204b9a736747521ca777c4d3fc3ce30594278
MD5 6940cdf5756af2a2fe0f9a8192eaa037
BLAKE2b-256 4da028f0d0e8d38f7a7e6d8662241719b0d47d5cb2ebcf48bcb8b4045e01ba9d

See more details on using hashes here.

File details

Details for the file apple_music_import-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for apple_music_import-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 685f5e21f635910caa9a5a31bd4ca0fbdbe65bb20130acb15e11f344771f14a6
MD5 498e78323691a242e24794115bd1ff00
BLAKE2b-256 59caab3d1b7efd76f2f8d13bc637cf0e7bd0f6e5efa121c1af7fb5add3e4ec83

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