https://github.com/JMPerez/spotify-dedup
Remove duplicates from your Spotify Playlists
https://github.com/JMPerez/spotify-dedup
music-library remove-duplicates spotify spotify-dedup spotify-library spotify-playlist spotify-web-api
Last synced: about 2 months ago
JSON representation
Remove duplicates from your Spotify Playlists
- Host: GitHub
- URL: https://github.com/JMPerez/spotify-dedup
- Owner: JMPerez
- License: mit
- Created: 2014-08-14T12:20:05.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2024-11-27T16:10:25.000Z (6 months ago)
- Last Synced: 2025-03-30T18:05:18.230Z (about 2 months ago)
- Topics: music-library, remove-duplicates, spotify, spotify-dedup, spotify-library, spotify-playlist, spotify-web-api
- Language: TypeScript
- Homepage: https://spotify-dedup.com
- Size: 3.34 MB
- Stars: 933
- Watchers: 14
- Forks: 78
- Open Issues: 25
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Spotify Deduplicator
[](https://greenkeeper.io/)
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](https://developer.spotify.com/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://spotify-dedup.com](https://spotify-dedup.com) or run it locally.
## Install and run
Install the dependencies:
pnpm install
Run it:
pnpm 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](https://github.com/JMPerez/promise-throttle).