Skip to content

Conversation

@mosturia
Copy link

@mosturia mosturia commented Apr 20, 2025

This PR aims to add support for the YT Music API.

Example track poster created from the YT Music API
Example poster created from the YT Music API

(In this screenshot, the artist's name goes over the icons, but I believe it's not relevant to this PR)

Example album poster created from the YT Music API
Example album poster created from the YT Music API

BREAKING CHANGES
This PR brings multiple breaking changes:

  • The client is now interrogated through the class ApiClient, which contains either a YtMusic of Spotify instance.
  • The Spotify API credentials are now optional, as the default client is the YTMusic one.
  • The CLI will switch to the Spotify API client if the credentials are present in the config.

LIMITATIONS

  • The label information is not stored in YouTube Music, instead it gets replaced by the artist.
  • The release date is not always correct, and can sometimes be the video's upload date.
  • I would have preferred the YT Music logo's color replacement to be inverted, but I somehow can't get it to work properly.

WHAT'S LEFT

  • Update the docs, especially for the breaking changes

IDEAS

  • We could add a third "API" client to get metadata from id3 tags (suggested by u/AccForTooRiskyStuff on this Reddit thread
  • Add a third poster type for a user's tracklist (their playlists, their favorite album, or whatever)

@mosturia mosturia changed the title Add support for YouTube Music API feature: Add support for YouTube Music API Apr 20, 2025
@TrueMyst
Copy link
Owner

I'm really happy with how the results turned out! I’ll be reviewing the updates after June 10th, as I got some events to complete :>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants