Daily News
- language: Swift 5.0
- platform: ios
- device: iphone/ipad
- license: MIT
Tag
Download


Architecture
I preferred MVVM for this project because its more testable and maintainable than MVC. And VIPER would be an overkill for this project. I have solved binding problem with Functional Programming using RxSwift.
Features
- Functional Programming with RxSwift
- Nested collection views.
- Custom views and layouts
- Pagination
- Programmatically UI
- Unit Tests for networking and view models.
Todos
- Implement side Menu with screen edge pan and tap gestures.
- Add Unit tests for Search Screen
- Add refreshing to every screens.
- Subscribe to errors and show alert.
Upcoming
I will use Apple's Combine framework and Delegation Pattern for binding in different branches to see cons and pros of three different binding solution for MVVM.
3rd Party Libraries
Usage
It is powered by NewsAPI! You should get your free developer API key from NewsAPI and add it to DailyNews/Networking/APISettings.swift.
