Skip to content

Latest commit

 

History

History
25 lines (19 loc) · 1.39 KB

README.md

File metadata and controls

25 lines (19 loc) · 1.39 KB

Sample iOS application using Clean Architecture and MVVM

iOS Project implemented with Clean Layered Architecture and MVVM. (Can be used as Template project by replacing item name “Movie”)

Medium post with detail description about this project: https://tech.olx.com/clean-architecture-and-mvvm-on-ios-c9d167d9f5b3

Architecture concepts used here:

Includes:

  • Unit Tests for Use Cases(Domain Layer), ViewModels(Presentation Layer), NetworkService(Infrastructure Layer)
  • UI test with XCUITests
  • Size Classes in Detail view
  • SwiftUI example, demostration that presentation layer does not change, only UI (at least Xcode 11 required)

Requirements:

  • at least Xcode Version 10.2.1 with Swift 5.0

How to use app:

To search a movie, write a name of a movie inside searchbar and hit search button. There are two network calls: request movies and request poster images. Every successful search query is stored persistently. There are two concurrent requests: Fetch movies and fetch movie offer. Screen loading finishes when both of them are complete.