A Bun/Node.js service that keeps a Spotify playlist and a YouTube Music playlist in sync.
- Go to your playlist
- Check the url on your browser (Should look like this: https://music.youtube.com/playlist?list=AAAAAAAAAAAAAAAAAAAAAAAA )
- Copy the content after
https://music.youtube.com/playlist?list= - Replace YOUR_YOUTUBE_PLAYLIST_ID by the content you copied in your config.json
"youtube": {
"clientId": "",
"clientSecret": "",
"refreshToken": "",
"redirectUri": "https://auth.ezzud.fr/callback",
"playlistId": "YOUR_YOUTUBE_PLAYLIST_ID"
},- Go to spotify
- Click on the "Share" button on your playlist
- Copy the link (Should look like this: https://open.spotify.com/playlist/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA)
- Copy the content after
https://open.spotify.com/playlist/ - Replace YOUR_SPOTIFY_PLAYLIST_ID by the content you copied in your config.json
"spotify": {
"clientId": "",
"clientSecret": "",
"refreshToken": "",
"redirectUri": "https://auth.ezzud.fr/callback",
"playlistId": "YOUR_SPOTIFY_PLAYLIST_ID"
},- Go to Google Cloud Console (https://console.cloud.google.com/)
- Create a new project
- Install Youtube Data API v3 on your project (API and services)
- Go to Credentials
- Click on "+ Create Credentials" for
Oauth Client ID - Select the following options:
- Application type: Web Application
- Authorized redirect URIs:
https://auth.ezzud.fr/callback
- Create your ID and copy the following informations into
config.json
"youtube": {
"clientId": "YOUR_CLIENT_ID",
"clientSecret": "YOUR_CLIENT_SECRET",
"refreshToken": "",
"redirectUri": "https://auth.ezzud.fr/callback",
"playlistId": ""
},- Go to "Audience" https://console.cloud.google.com/auth/audience
- On "Test users", add the email of the youtube account owning your playlist
- Go to https://developer.spotify.com/
- Create a new App
- Add Redirect URI:
https://auth.ezzud.fr/callback - Check "Web API"
- Create your App
- Copy Client ID and Secret and paste them into
config.json
"spotify": {
"clientId": "YOUR_CLIENT_ID",
"clientSecret": "YOUR_CLIENT_SECRET",
"refreshToken": "",
"redirectUri": "https://auth.ezzud.fr/callback",
"playlistId": ""
},Requirements: https://bun.com
- On your cmd, paste
pnpm start
- You will receive multiple links to open in the console ℹ️ FOLLOW INSTRUCTIONS IN THE CONSOLE
- Open each link and allow access as requested
- Copy the url you got redirected to after allowing access
- Paste it into the console and press enter
- Now everything will be synchronised automatically