Quizify – Music Quiz with Spotify
Quizify is a music quiz that uses your Spotify playlists. Guess the artist, title, or release year of songs from your own playlists – directly in your browser!
Features
- Login with Spotify
- Select your own playlists
- Multiple game modes: Guess artist, title, or year
- Singleplayer and Local Multiplayer (up to 4 players, each with their own score)
- Adjustable play duration and random start position for each song
- Spotify Web Playback (play songs directly in the browser)
- No song repeats until all have been played
- Smart search and answer evaluation (ignores bracket additions, apostrophes, etc.)
- Multilingual: All texts are loaded from language files, language is set via
.env - Invite/Referral link system for easy sharing
- Dockerfile included – ready for deployment with Coolify or any Docker-compatible platform
Requirements
- Python 3.10 or newer
- Spotify Developer Account (developer.spotify.com)
- Spotify Premium Account (for Web Playback)
- Environment variables must be set (see
.env.example)
Installation
-
Clone the repository
git clone https://gitea.devanturas.net/Simon/quizify.git cd quizify -
Create the .env file Copy
.env.exampleto.envand enter your Spotify API credentials. -
Start on Windows
start.batOr manually:
python -m venv ven ven\Scripts\activate pip install -r requirements.txt python app.py -
Open in your browser
Docker / Coolify
Quizify comes with a ready-to-use Dockerfile.
You can deploy it on Coolify or any Docker-compatible platform.
Build and run locally:
docker build -t quizify .
docker run --env-file .env -p 5000:5000 quizify
Coolify:
Just connect your repository, set your environment variables in Coolify, and deploy.
The app will be available on port 5000 by default.
.env Example
See .env.example for the required variables.
Notes
- The app requires a Spotify Premium account for the Web Playback feature.
- The Spotify Redirect URI must exactly match
SPOTIPY_REDIRECT_URIin the Spotify Developer Console. - All texts are loaded from language files in the
localesfolder. Set the language via theLANGvariable in your.env(e.g.,LANG=en-ENorLANG=de-DE). - You can set the play duration and start position for each song in the quiz interface.
- Local Multiplayer: After selecting "Local Multiplayer", you can enter up to 4 player names. Each player takes turns and has their own score.
- Referral/Invite Link: Generate a time-limited invite link to let friends join your quiz session (each with their own Spotify account).
License
MIT License
Description
Languages
HTML
87.3%
Python
11.1%
Batchfile
1.2%
Dockerfile
0.4%