2023 iOS Intern Homework iTunes Music App
This app is a simple music app, which can search music by keyword, show music list, show music detail and show music detail's infos preview, and it is based on MVVM architecture, use Combine to bind data between view model and view controller.
cd iTunes-Music
pod install
open iTunes-Music.xcworkspace
- Search music by keyword
- i18n support
- Show music list
- Show music detail
- Show music detail's infos preview
- Handling of poor network conditions
- Handling of empty data
- Unit tests
- Github Action CI for unit tests and SwiftLint
- A11y support
- GPT-3 Code Review
- iOS 13.0+
- Xcode 13.0+
- Swift 5.0+
BaseRepository is a generic class that provides the basic functions of the service layer, such as network request for the raw data.
BaseDataService is a generic class that provides the basic functions of the view model layer, it is responsible for the raw data transformation of the view model layer.
BaseViewController is a generic class that provides the basic functions of the view layer, such as setup subscribes and add views for the view model layer.