https://github.com/stephenombuya/songplaylistapplication
This Java-based application is designed to manage a collection of songs organized into albums and playlists. It allows users to create albums, add songs to albums, and manage playlists by adding, removing, or playing songs.
https://github.com/stephenombuya/songplaylistapplication
java object-oriented-programming practice-project
Last synced: 2 months ago
JSON representation
This Java-based application is designed to manage a collection of songs organized into albums and playlists. It allows users to create albums, add songs to albums, and manage playlists by adding, removing, or playing songs.
- Host: GitHub
- URL: https://github.com/stephenombuya/songplaylistapplication
- Owner: stephenombuya
- License: gpl-3.0
- Created: 2023-08-04T12:37:41.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-12-24T09:20:52.000Z (10 months ago)
- Last Synced: 2025-05-29T19:58:41.188Z (5 months ago)
- Topics: java, object-oriented-programming, practice-project
- Language: Java
- Homepage:
- Size: 21.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Song Playlist Application
This Java-based application is designed to manage a collection of songs organized into albums and playlists. It allows users to create albums, add songs to albums, and manage playlists by adding, removing, or playing songs.
### Features
* **Album Management:**
* Create new albums.
* Add songs to albums.
* Retrieve songs by title and duration.
* **Playlist Management:**
* Add songs from albums to a playlist.
* Remove songs from a playlist.
* Play songs in a playlist sequentially.### Technologies Used
* Programming Language: Java
* Java Features Used:
* Object-Oriented Programming (OOP)
* Collections Framework (ArrayList, LinkedList)
* Iterators### File Structure
* `Album.java`: Contains the `Album` class to represent a music album. It includes methods to add songs and retrieve them by title and duration.
* `Song.java`: Defines the `Song` class, representing a song with attributes such as title and duration.
* `Main.java`: The entry point of the application where playlists are created and managed. Includes logic to add, remove, and play songs from playlists.
* `.gitignore`: Specifies files and directories to be ignored by Git.
* `LICENSE`: Contains the license for the project.### Getting Started
**Prerequisites**
* Java Development Kit (JDK) installed (version 8 or later).
* A code editor or IDE (e.g., IntelliJ IDEA, Eclipse, or Visual Studio Code).**Setup**
1. Clone the repository:
```bash
git clone https://github.com/stephenombuya/songplaylistapplication
```2. Open the project in your preferred IDE.
3. Compile and run the `Main.java` file to start the application.### Usage
- **Create Albums**: Use the Album class to create albums and add songs.
- **Add Songs to Playlist**: Add songs from albums to a playlist using the Main class methods.
- **Manage Playlists**: Play, remove, or navigate through songs in the playlist.### License
This project is licensed under the terms of the [LICENSE](License) file.### Contributing
Contributions are welcome! Feel free to open issues or submit pull requests to improve the project.### Author
[Stephen Ombuya](https://github.com/stephenombuya)