MVP music player consumes HearThisAt API to show the popular tracks
- If this is your first time encountering swift/ios development, please follow the instructions to set up XCode and Swift on your Mac.
- To set up cocoa pods for dependency management, make use of CocoaPods
- Checkout master branch to run the latest version
- Open the terminal and navigate to the project root directory.
- Make sure you have cocoa pods set up, then run: pod install
- Open the project by double-clicking the
UPlayer.xcworkspace
file - Select the build scheme which can be found right after the stop button on the top left of the IDE
- [Command(cmd)] + R - Run app
// App Settings
APP_NAME = UPlayer
PRODUCT_BUNDLE_IDENTIFIER = abozaid.UPlayer
#targets:
* UPlayer
* UPlayerTests
* UPlayerUITests
- Select the build scheme which can be found right after the stop button on the top left of the IDE
- [Command(cmd)] + B - Build app
- [Command(cmd)] + R - Run app
This application uses the Model-View-ViewModel (referred to as MVVM) UI architecture.
- SupportingFiles: Group app shared files, like app delegate, assets, info.plist, ...etc
- Modules: Include separate modules, components, extensions, ...etc.
- Scenes: Group of app scenes.
- Set-up dependencies
- Add swiftlint yml, gitignore.
- Implement artists list, songs list
- Paginate the artists API
- Implement audio player
- Check different device size and different orientation
- Check dark mode
- Add unittests
- Add ui-tests
- Render waveform to audio player
- Enable audio player full screen page by swipe up.
- Add CD pipelines using github actions.
- Create app test plan
- Integerate with danger.
- Add search feature.
- Cach the audio and json response
- Auto play next audio file in the list.
- Reach 100% code coverage.
- Add split controller for iPad
- Play music in background
- Add XCConfig