# 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](https://coolify.io/) or any Docker-compatible platform ## Requirements - Python 3.10 or newer - Spotify Developer Account ([developer.spotify.com](https://developer.spotify.com/)) - Spotify Premium Account (for Web Playback) - Environment variables must be set (see `.env.example`) ## Installation 1. **Clone the repository** ```sh git clone https://gitea.simolzimol.net/Simon/quizify.git cd quizify ``` 2. **Create the .env file** Copy `.env.example` to `.env` and enter your Spotify API credentials. 3. **Start on Windows** ```sh start.bat ``` Or manually: ```sh python -m venv ven ven\Scripts\activate pip install -r requirements.txt python app.py ``` 4. **Open in your browser** - [http://localhost:5000](http://localhost:5000) ## Docker / Coolify Quizify comes with a ready-to-use `Dockerfile`. You can deploy it on [Coolify](https://coolify.io/) or any Docker-compatible platform. **Build and run locally:** ```sh 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_URI` in the Spotify Developer Console. - All texts are loaded from language files in the `locales` folder. Set the language via the `LANG` variable in your `.env` (e.g., `LANG=en-EN` or `LANG=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