Skip to content

A music player app that combines step count tracking and music recommendations. The app displays the user's current step count and a weekly summary of activity, recommends playlists based on the user's activity level, and simulates track playback with an interactive progress bar.

Notifications You must be signed in to change notification settings

Rabbia-Ijaz/Audicin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 

Repository files navigation

A music player app with step tracking and playlist recommendations.

Description

A SwiftUI-based music player app that combines step count tracking and music recommendations. The app displays the user's current step count and a weekly summary of activity, recommends playlists based on the user's activity level, and simulates track playback with an interactive progress bar.

Features:

  • Step Count View: Step count current status along with the past week summary
  • Personalized Playlists: Recommends playlists based on the user's activity level (step count).
  • Access to all Playlists: Allows the user to browse and access all available playlists, but the app will prioritize displaying recommended playlists based on the step count.
  • Track Playback: Real-time progress bar with play/pause and restart functionality.
  • Track Information: Displays track title, artist, and duration.

Choices I made:

  • I used HealthKit data from the simulator for this task. This allows the step count to refresh every time the user updates the data in the Health app, ensuring up-to-date step count information.
  • To simplify the handling of playlists, I used a playlists.json file to display data for all three playlists. This decision made it easier to manage and update the playlists without the need for a backend or database.
  • I chose to simulate track playback instead of integrating a real music player backend for simplicity and to focus on UI/UX design and functionality.
  • I chose a custom color palette to align with the theme of the app, ensuring a visually appealing design.

Screenshots

Main Screen Playlist Screen (recommended) Playlist Screen (all) Track Screen

Trade-offs

During the development, the following trade-offs were made:

  • HealthKit Integration: HealthKit data was integrated using the simulator rather than an actual iOS device. Unfortunately, my device broke down, and I am awaiting a replacement, which will allow me to test on a real device next month.
  • Real-time Step Count Updates: Due to the use of the simulator for development and testing, the app does not support real-time step count updates. Simulators do not provide access to real-time HealthKit data. However, the app does update the step count every time the data is modified in the Health app, ensuring that the displayed step count remains up-to-date.
  • Simplified Playback: To keep the focus on the user interface and overall user experience, I opted for a simulated track playback rather than implementing a full audio playback system. This choice simplified the development process while still providing an interactive playback simulation.
  • Playlist Data: Playlist recommendations are based on predefined data in a playlist.json file. This simplifies the functionality and avoids the complexity of integrating a live backend or database for dynamic playlist management.

About

A music player app that combines step count tracking and music recommendations. The app displays the user's current step count and a weekly summary of activity, recommends playlists based on the user's activity level, and simulates track playback with an interactive progress bar.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages