All Projects → JMPerez → Spotify Dedup

JMPerez / Spotify Dedup

Licence: mit
Remove duplicates from your Spotify Playlists

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to Spotify Dedup

Rompr
Web client for Mopidy and MPD
Stars: ✭ 115 (-73.98%)
Mutual labels:  spotify, music-library
Tauonmusicbox
The Linux desktop music player from the future! 🌆
Stars: ✭ 494 (+11.76%)
Mutual labels:  spotify, music-library
Olivia
Elegant music player for LINUX
Stars: ✭ 261 (-40.95%)
Mutual labels:  spotify, music-library
Spotitube
Synchronize your Spotify collections downloading from external providers
Stars: ✭ 250 (-43.44%)
Mutual labels:  spotify, music-library
App
🎉 Festify Host & Client
Stars: ✭ 317 (-28.28%)
Mutual labels:  spotify
Simple Netease Cloud Music
🎵A simple netease music api lib. 简单、统一、轻巧的 Node.js 版网易云音乐 API
Stars: ✭ 268 (-39.37%)
Mutual labels:  music-library
Passport Spotify
Spotify authentication strategy for Passport and Node.js.
Stars: ✭ 266 (-39.82%)
Mutual labels:  spotify
Spotifyr
R wrapper for Spotify's Web API
Stars: ✭ 258 (-41.63%)
Mutual labels:  spotify
Spotify Dl
Spotify Downloader and alternative of Spotdl(python) tool made in NodeJS based on youtube-dl
Stars: ✭ 427 (-3.39%)
Mutual labels:  spotify
Ios Sdk
Spotify SDK for iOS
Stars: ✭ 356 (-19.46%)
Mutual labels:  spotify
Raspotify
Spotify Connect client for the Raspberry Pi that Just Works™
Stars: ✭ 3,623 (+719.68%)
Mutual labels:  spotify
Spotify Dl
a script that allows you to download spotify songs or playlists , written in python
Stars: ✭ 275 (-37.78%)
Mutual labels:  spotify
Tchaik
Music organisation and streaming system in Go
Stars: ✭ 331 (-25.11%)
Mutual labels:  music-library
Ytmdl Web V2
Web version of ytmdl. Allows downloading songs with metadata embedded from various sources like itunes, gaana, LastFM etc.
Stars: ✭ 398 (-9.95%)
Mutual labels:  spotify
Plylst
Smart playlists for Spotify! Stop relying on fancy pants algorithms to organize your library and instead build playlists the way you want.
Stars: ✭ 301 (-31.9%)
Mutual labels:  spotify
Csound Expression
Haskell Framework for Electronic Music
Stars: ✭ 257 (-41.86%)
Mutual labels:  music-library
Mutespotifyads
A efficent MacOS application automatically silencing ads of the spotify desktop app
Stars: ✭ 347 (-21.49%)
Mutual labels:  spotify
Spotiflyer
Spotify/Gaana/Youtube Music Downloader For Android!
Stars: ✭ 231 (-47.74%)
Mutual labels:  spotify
Hyperamp
🎛 Humble music player
Stars: ✭ 293 (-33.71%)
Mutual labels:  music-library
Spotui
Spotify in the terminal 💻🎶
Stars: ✭ 302 (-31.67%)
Mutual labels:  spotify

Spotify Deduplicator

Greenkeeper badge

Have you ever wanted to remove duplicated songs from your Spotify library? Now you can find and remove them using Spotify Dedup.

This project uses the Spotify Web API for managing playlists. Just log in and it will traverse your playlists, finding songs that appear multiple times with the same identifier (Spotify URI) in a given playlist.

If it finds duplicates, they can be removed just pushing a button. And since it doesn't create a whole new playlist, it keeps all the information like creation date and subscribers.

Try it

You can check it out on https://jmperezperez.com/spotify-dedup/ or run it locally.

Install and run

Install the dependencies:

yarn install

Run it:

yarn dev

Then open http://localhost:3000 in a browser

Testing

In order to test saved tracks, create duplicated tracks by executing the Web API request on https://developer.spotify.com/console/put-current-user-saved-tracks/?ids=2JZfTvWWtpaE8NohqRXqFr,1poUtf2dDdVUtWL8tn03Wd,6ADSaE87h8Y3lccZlBJdXH,2x45xqISlmmDJqxOqr8BuS,1iQ1BpOGF1Umd3lpTV4OPO.

About the tools used and implementation details

Spotify Web API and Promises

This app is a good example of how to traverse a user's library without incurring in rate limit. Have a look at the code and see how Promises and a Promise Queue are used to control the amount of requests sent to the Spotify Web API. If you are interested in throttling promises, check out promise-throttle.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].