The Reshuffler API is a web service that allows users to shuffle their music playlists based on song similarities. It utilizes advanced algorithms to ensure that the shuffled playlist maintains a coherent flow of music.
- Shuffle playlists based on song similarities.
- API endpoints for easy integration with other applications.
- Built using Flask (or FastAPI) for lightweight and efficient performance.
reshuffler-api
├── src
│ ├── app.py # Entry point of the application
│ ├── reshuffler.py # Core logic for shuffling playlists
│ └── utils
│ └── __init__.py # Utility functions and classes
├── requirements.txt # Project dependencies
├── README.md # Project documentation
└── .gitignore # Files and directories to ignore by Git
-
Clone the repository:
git clone <repository-url> cd reshuffler-api -
Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate` -
Install the required dependencies:
pip install -r requirements.txt
-
Start the API server:
python src/app.py -
Use the following endpoint to shuffle a playlist:
POST /shuffle{ "playlist": [ "spotify_id1", "spotify_id2", ... ] }[ { "spotify_id1": "id1" }, { "spotify_id2": "id2" }, ... ]
Contributions are welcome! Please open an issue or submit a pull request for any enhancements or bug fixes.