Welcome to the Music Player System! This is a feature-rich console-based application that allows users to manage and play their favorite songs with ease. Built with Java, it provides options to add songs, play songs by different criteria, retrieve top songs, and more.
✨ Add Songs
- Add songs with today's date automatically.
- Add songs with a specific date.
🎶 Play Songs
- Play songs by name.
- Play songs by artist.
- Play songs by both name and artist.
📚 Retrieve Songs
- Get all songs by a specific artist.
- Fetch the top N songs by date or artist.
⏳ Analytics
- Retrieve songs played within the last N days.
🛑 User-Friendly Exit
- Option to gracefully exit the application.
-
Clone the Repository:
git clone https://github.com/vaibhavpawar/music-player-system.git cd MusicPlayer
-
Compile the Code:
javac Main.java
-
Run the Application:
java Main
-
Follow the Menu:
Use the numbered options to interact with the system and enjoy managing your music!
├── Main.java # Main entry point for the application
├── Playlist.java # Handles playlist operations
├── Song.java # Represents a song object
├── Data.java # Real Data inserted for Testing
├── ExceptionHandeling.java # Handelling Exceptions
├── README.md # Project documentation
1️⃣ Add Song (Today's Date)
2️⃣ Add Song (Custom Date)
3️⃣ Play Song by Name
4️⃣ Play Song by Artist
5️⃣ Play Song by Name & Artist
6️⃣ Retrieve Songs by Artist
7️⃣ Retrieve Top N Songs
8️⃣ Retrieve Top N Songs by Artist
9️⃣ Retrieve Top N Songs by Date
🔟 Retrieve Songs Played in Last N Days
❌ Exit Application
Welcome to Music Player!
================================
Menu:
1. Add Song (Date will be today's by default)
2. Add Song with specific Date
3. Play Song by Song Name
4. Play Song by Artist Name
5. Play Song by Song Name and Artist Name
6. Retrieve all Songs of given Artist
7. Return top N Songs Till Date
8. Return top N Songs of a given Artist
9. Return top N Songs of a given Date
10. Return all Songs played in less than N days
-1. Exit Music Player
================================
Enter your choice:
This project is licensed under the MIT License. See the LICENSE file for details.
Have suggestions or found a bug? Feel free to create an issue or contact me directly. Let's make this project even better! 🙌