This project was completed during the 3rd semester for the Data Structures and Algorithms (DSA) course. The goal was to simulate the functionalities of the Wynk music app using C programming language and various data structures.
The simulated Wynk music app includes the following features:
-
User Management:
- ✍️ Sign up
- 🔑 Log in
- 🧑💼 View user details
-
Music Management:
- 🎶 Browse songs
- 📂 Create and manage playlists
▶️ Play songs- 🔍 Search for songs
- Linked Lists: Used to manage playlists and song queues.
- Hash Tables: Implemented for efficient user management and song searches.
- Stacks: Utilized for the "recently played" feature.
- Queues: Employed for handling song playback order.
main.c
: The main source code file containing the core functionality.wynk.c
: Additional source code with supporting functions.playlist.txt
: Sample data file containing playlist information.songs.txt
: Sample data file with song details.users.txt
: Sample data file with user information.pthread_unistd.h
: Header file for thread management.main.exe
: Compiled executable file for the project (Windows).
- Compile the Source Code:
gcc main.c wynk.c -o wynk_music_app -lpthread
- Run the Application:
./wynk_music_app
-
Sign Up:
- ✍️ Enter your details to create a new user account.
-
Log In:
- 🔑 Use your credentials to log in to the app.
-
Browse Songs:
- 🎶 View the list of available songs.
-
Create Playlist:
- 📂 Add songs to your personalized playlist.
-
Play Songs:
▶️ Select and play songs from the playlist or library.
-
Search Songs:
- 🔍 Use the search feature to find specific songs quickly.