SpotifyExplorer
SpotifyExplorer copied to clipboard
A sample over The Clean Architecture + RxSwift + MVVMC uses the Spotify APIs + Custom Dark Mode+ Unit Tests
SpotifyExplorer
![](https://github.com/behrad-kzm/BEKDesing/blob/master/Images/BEKHeader.png)
![](https://github.com/behrad-kzm/SpotifyExplorer/raw/master/Documents/ICON.png)
A sample over The Clean Architecture + RxSwift + MVVMC uses the Spotify APIs
Demo
1- Splash
![](https://github.com/behrad-kzm/SpotifyExplorer/raw/master/Documents/ezgif-2-7506a74a7fed.gif)
2- Login & Following
![](https://github.com/behrad-kzm/SpotifyExplorer/raw/master/Documents/ezgif-2-bb1de092954d.gif)
3- Albums List
![](https://github.com/behrad-kzm/SpotifyExplorer/raw/master/Documents/ezgif-2-d6af6f6026a7.gif)
Installing and build
Dependencies in this project are provided via Cocoapods. Please install all dependecies with
pod install
Build sequence:
Domain > NetworkPlatform > Application
High level overview
Domain
The Domain
is basically what is the App about and what it can do (Entities, UseCase etc.) It does not depend on UIKit or any persistence framework, and it doesn't have implementations apart from entities
Platform
The Platform
is a concrete implementation of the Domain
in a specific platform like iOS. It does hide all implementation details.
Application
Application
is responsible for delivering information to the user and handling user input. It can be implemented with any delivery pattern e.g (in SpotifyExplorer app is MVVM). This is the place for UIView
s and UIViewController
s. As you will see from the SpotifyExplorer app, ViewControllers
are completely independent of the Platform
. The only responsibility of a view controller is to "bind" the UI to the Domain to make things happen.
Refrences
Contact me
- feel free to contact by Email
- or send me message on Telegram