Skip to content

Commit bbd7800

Browse files
committed
Improved README.md
- For easier readability, a table of content was added at the top of the readme. - A new Badge now displays the amount of open issues. This helps new people see the amount of chances to contribute. - Rewrote introduction to outline the project more clearly - To highlight the features of this project, a new feature section was created. - To visualize and give a quick tutorial on the project's workflow, a guide was added. - To help new people with the installation process, more detailled commands were added. This includes the installation of the required pnpm, as well as needed git commands - To standardize other user's contributions to this project, a new section was created in the readme. It includes needed commands as well as a tip concerning large changes - For better visibility, a link to the license was added at the bottom of the readme.
1 parent 4a4961d commit bbd7800

File tree

1 file changed

+59
-9
lines changed

1 file changed

+59
-9
lines changed

README.md

Lines changed: 59 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,64 @@
11
# Spotify Deduplicator
22

33
[![Greenkeeper badge](https://badges.greenkeeper.io/JMPerez/spotify-dedup.svg)](https://greenkeeper.io/)
4+
[![GitHub issues](https://img.shields.io/github/issues/JMPerez/spotify-dedup)](https://github.com/JMPerez/spotify-dedup/issues)
45

5-
Have you ever wanted to remove duplicated songs from your Spotify library? Now you can find and remove them using Spotify Dedup.
6+
## Table of Contents
7+
1. [Introduction](#introduction)
8+
2. [Features](#features)
9+
3. [Usage](#usage)
10+
4. [Installation](#installation)
11+
5. [Testing](#testing)
12+
6. [About the Tools Used](#about-the-tools-used-and-implementation-details)
13+
- [Spotify Web API and Promises](#spotify-web-api-and-promises)
14+
7. [Contributing](#contributing)
15+
8. [License](#license)
616

7-
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.
817

9-
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.
18+
## Introduction
19+
Have you ever wanted to remove duplicated songs from your Spotify library? Now you can find and remove them using Spotify Dedup. Spotify Deduplicator is a simple and effective tool for cleaning up your Spotify library. Just log in and it will traverse your playlists, finding duplicate songs. It uses the [Spotify Web API](https://developer.spotify.com/web-api/) to identify songs that appear multiple times in a given playlist. With the press of a button, you can remove duplicate tracks from your playlists and liked songs. It saves time and effort by avoiding the need to manually check for duplicate entries, which can be especially useful for users with large music libraries. No playlists are re-created, ensuring all metadata like creation dates and followers are preserved.
1020

11-
## Try it
21+
## Features
22+
- **Automatic Duplicate Detection**: Finds duplicate tracks in playlists and liked songs.
23+
- **Detect all duplicate**: Finds duplicates that Spotify does not detect by comparing ID, title, artist, and duration similarity.
24+
- **Playlist Integrity**: Removes duplicates without creating new playlists, retaining original creation dates and follower counts.
25+
- **Save Time and Effort**: No more manually searching for duplicates. Spotify Deduplicator scans your entire library efficiently.
26+
- **Cross-Platform**: Works directly in your browser or can be run locally.
27+
28+
## Usage
1229

1330
You can check it out on [https://spotify-dedup.com](https://spotify-dedup.com) or run it locally.
31+
1. Login with your Spotify account.
32+
2. Once logged in, your playlists and liked songs will automatically be scanned.
33+
3. Review detected duplicates for each playlist.
34+
4. Remove all duplicates in one playlist by clicking the removal button.
1435

15-
## Install and run
36+
Scan results
37+
![image](https://github.com/user-attachments/assets/291641a6-49f3-40b7-924e-f59b6ae5c518)
1638

17-
Install the dependencies:
39+
After deduping
40+
![image](https://github.com/user-attachments/assets/4e4a6f82-cb39-449f-a39b-6f2f7519e03d)
1841

19-
pnpm install
2042

21-
Run it:
43+
## Installation
44+
45+
You will need NPM and therefore Node.js installed for this project. Check the [installation guide](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) for NPM.
46+
47+
Also, ensure you have **pnpm** installed. If you don't have it, install it using the following gcommand:
48+
49+
npm install -g pnpm
50+
51+
Now, clone the repository and install dependencies::
52+
53+
git clone https://github.com/JMPerez/spotify-dedup.git
54+
cd spotify-dedup
55+
pnpm install
56+
57+
Run it locally:
2258

2359
pnpm dev
2460

25-
Then open http://localhost:3000 in a browser
61+
Then, open your browser and navigate to http://localhost:3000.
2662

2763
## Testing
2864

@@ -33,3 +69,17 @@ In order to test saved tracks, create duplicated tracks by executing the Web API
3369
### Spotify Web API and Promises
3470

3571
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).
72+
73+
## Contributing
74+
Contributions are welcome! Feel free to open issues or submit pull requests.
75+
76+
1. Fork the repository.
77+
2. Create a new branch (`git checkout -b feature-branch`).
78+
3. Make your changes.
79+
4. Commit and push your changes (`git commit -m "Add feature"`).
80+
5. Open a pull request.
81+
82+
For larger changes, it is recommended to open an issue first to discuss your ideas.
83+
84+
## License
85+
This project is licensed under the MIT License. See the [LICENSE](./LICENSE) for details.

0 commit comments

Comments
 (0)