A iOS application with layout based on App Store that can check the most starred and last updated Swift repository. It was developed in a modular way using SPM, with their respective tests and using the modern collection view
- Modularization using SPM
- Xcodegen
- CLEAN Swift Architecture (VIP)
- Modern Collection View
- Mock Mode
- Pull-to-Refresh
- Infinity Scroll using PrefetchItems
- View Code (UIKit)
- Preview using UIViewRepresentable
- Dark Mode
- Internationalization (English and PT-Br)
- Unit tests
- Snapshots Tests
- Await/Async Request
First of all download and install Xcode, and Xcodegen, then clone the repository
https://github.com/HelioMesquita/Swiftmazing.git
Go to cloned directory and execute
xcodegen generate
Open the directory project and double tap on Swiftmazing.xcodeproj
For each scheme in project run some tests targets
- The Swiftmazing scheme runs the unit tests for all business and presentation rules
- The UIComponents scheme runs the snapshot tests for all views and view controllers
- The NetworkLayer scheme runs the unit tests for all network tests
- SnapshotTesting - PointFree Snapshot Testing
- SDWebImage - Asynchronous image downloader with cache support as a UIImageView category