Deezer Test

Deezer Music app which lets user search artists, and play preview of their songs.

Use Case:

  • Home tab with Top Charts ( Tracks, Albums, Artists, Playlists, Podcasts)
  • Search tab to search Artists
  • When artistn tile is clicked, tracks detail page is displayed with artist image, details of available tracks.
  • User can click on track and it will open mini player, which will be visible throughout the app.
  • User can stop the music by clicking on pause button, and start it again.
  • Tracks details are also available when user navigates through Albums, Artists, Playlists on Home page.
  • Localization Supported for English & French

Tech Stack/ Highlight:

  • Language: Swift
  • Platform: iOS 15
  • Networking: Combine + URLSession
  • Observers
  • UI Design Pattern: Model View View-Model + Coordinator
  • UI Binding: Combine
  • Unit Tests (for data driven components and few view components) – Total Test Coverage – 60%
  • Depedency Injection using Coordinators
  • Collection Views (Compositional Layout), Table Views, Collection View List Cells, Diffable Data Sources

To run the app:

  • Download this repo.
  • Go to project root via command line
  • Open .xcodeproj file.
  • Run on simulator (iOS 15, > iPhone 12 preferably)
  • Screenshots are prepared on iPhone SE II.
  • Nitesh Singh
  • Software Engineer – iOS
  • Lyon, France

GitHub

View Github