A modern iOS app demonstrating UICollectionView with horizontal pagination and dynamic image loading from Picsum Photos API.
- Combine: Used for downloading and caching images asynchronously.
- Async Let: To fetch multiple users concurrently using async let
- Async await: modern concurrency
- XCTestCase
- UIKit
- Core Data
- Combine
- NSCache
For details about architecture, please visit this
We chose MVVM (Model-View-ViewModel) because:
- 🚀 Fast development: Simple and lightweight, allowing us to implement features quickly.
- 🌍 Popular: Widely adopted in the iOS community, with strong support and resources available.
- 🧪 Easy unit testing: Business logic is separated into the ViewModel, making testing straightforward without relying on UI components.
This makes MVVM a practical choice where both development speed and code quality are priorities.
- Clone this repository to your local machine.
git clone https://github.com/hiepcute/ImageGalary.git