Tech Stack
Description
A cross-platform desktop music player built with JavaFX and Spring Boot, on top of music-commons and lirp. Manage your local music library, organize playlists, play tracks with waveform visualization, and import from iTunes.
I started this project in my university years as a small pet project to solve a problem with audio metadata tagging, in the times when I started to DJ. Back then I used iTunes to organize my music library and when I started to use DJ software and import my files there, it turned out that iTunes was not writing the track information I spent so much time curating into the file metadata tags, therefore having a frustrated experience since I spent so much time tagging my entire music library in order to find the tracks I wanted to play in my sets with ease.
Therefore I started a cli tool that parsed the itunes library xml file and wrote the info into the track metadata using jaudiotagger. Easy-peasy. However, why stop there? I was studying to become a software engineer so, why not build my own music library app?
That became Musicott, the project I spent countless hours learning to code alongside my studies with the ambition to have some features that I did not find in other similar apps while helping me become a better Software Engineer.
- Built a desktop music manager application using Java 25, Kotlin and JavaFX with CSS styling.
- Implemented unit testing with JUnit 5 and UI testing with TestFX for comprehensive test coverage.
- Spring Boot for clean architecture.
- Built on top of music-commons and lirp for modular architecture.
