Deezify is a music player application developed as part of the INFO-F307 course at ULB. The project aims to provide a simple, intuitive, and feature-rich music player for desktop platforms.
It is developed using Java and JavaFX, and it supports playback of local audio files (.mp3, .wav).
It is available for Windows, macOS, and Linux.
To run the project, you can download the latest release from the releases page. You'll need to have Java installed on your system.
- Clone the repository
git clone https://github.com/Ant0in/Deezify.git-
Install the Java JDK compatible with your platform: https://www.oracle.com/java/technologies/downloads/
-
Install the JavaFX SDK compatible with your platform: https://gluonhq.com/products/javafx/
-
Install Maven on your system: https://maven.apache.org/download.cgi
-
Compile the project
mvn compile- Run the project
mvn exec:java- 🎵 Basic Music Playback: Play local audio files (
.mp3,.wav) - 🎚️ Playback Controls: Play, pause, skip, previous track, seek, volume control
- 📌 Queue System: Add/remove tracks to the playback queue
- 🌎 Multilingual Support: Supports English, French, and Dutch
- 🖼️ Album Art Retrieval: Fetch & display album covers automatically
- 📜 Metadata Editing: Modify artist, track name, and album information
- 🏷️ Tagging System: Assign custom tags (genres, moods, events) to tracks
- 📑 Playlists Management: Create, edit, and organize playlists
- ⭐ Favorites System: Easily mark and access favorite songs
- 📻 Web Radio Integration: Stream online radio stations
- 🎤 Lyrics Display: Display lyrics for the currently playing track
- 🎧 Equalizer: Tune frequency bands (−20 dB to +20 dB)
- 🔎 Research: Let the user search for music in its library based on title, artist, album, or tags
- 〰️ Visualizer: Audio Visualizer, draws a nice looking graph that updates based on the sounds that are playing
- 📜 Metadata autocompletion: Suggest values for artist, album, and tags when modifying the metadata
- 🎤 Karaoke: Allow user to sing along with the music playing thanks to lyrics updating in real time with the song
- 🎛️ DJ mode: Allow for audio effects to be applied in real time
- 🤖 Smart Suggestions: Suggest similar tracks during playlist creation based on artist, tags, and album metadata
- 🔄 Crossfade Transitions: Smooth transitions between tracks with adjustable fade duration
- 🎬 Video Cover Support: Play a muted
.mp4video as the song’s cover if set - 👥 User Accounts (Local): Multiple local users with separate libraries and playlists, plus a shared global folder
https://v0-work-in-progress-page-ebon.vercel.app/
This project uses the following libraries:
- JavaFX
- JAudiotagger
- GSon
- JUnit for testing