Some of the MovieDB APIs Implementation with SwiftUI, Combine and MVVM architecture
MovieDB demo implementation with SwiftUI, Combine and MVVM Architecture.I also created Network Manager pod and used it in the project for API calls as instructed in Assignment. Here is the pod MDNetworkManager
You can find demo video of app working below.
- Popuplar Seasons list with pagination
- Season detail along with its episodes
- Episode details
- Video Player with dummy remote URL.
List of tools and technologies used in this project.
- Xcode: Version 15.2
- Programming Language: Swift
- SwiftUI
- Combine
- MVVM with Router
- Unit Testing with XCTest
Project structure is as follows:
-
MovieDBSwiftUI
-
ContentView
-
SeasonList
- Model
- ViewModel
- View
- Service
-
SeasonDetail
- Model
- ViewModel
- View
- Service
-
EpisodeDetail
- View
- ViewModel
-
Router
-
Helper
-
Network
-
MovieDBSwiftUITests
- SeasonListViewModelTests
- MockListSerivce
-
Pods
- Introduced my own framework MDNetworkManager and published it on Cocoapod MDNetworkManager
- Clone the repository:
git clone https://github.com/irfaniOSdev/MovieDBSwiftUI.git
- Open the project in Xcode Workspace
- Run the project
- Error handling should be improved in the project e.g API failures etc.
- More unit tests should have been covered