Movies showroom app wihich use Viper pattern with Movies DB API

The Cinepedia app uses the MovieDB.org database. Mainly, app provides 4 different scenes which are Splash, List, Search and Detail. The whole app builded with VIPER architecture. In addition, a clean network layer is used for the best comminication with API.

The Auto-Layout principls applied when design the views according the guidline warframe. As shown below, the view components showed properly all of the screen sizes:

Generally users can list movies after the checking the internet connection on splash screen. If the internet connection is losed app inform the user and closes the app. Otherwise, after a 1 second users can see the movies list which are contains Up Coming and Now Playin movies.

User can search movies with using query parameters to fetching data from API. The search is prelimited with 2 characters. With other words, too improve searching quality user can search after typing 3 and more letters on search bar. Also, this method works with waiting typing of users.

The user can move detail all of the movie items. In the detail scene, app provides imdb link to visiting web page that provides more information. In addition, app has a favorite movie structure which uses the UserDefaults and the main response model of detail service.

On the other hand, The UITests and UnitTest is added with the fully support of the VIPER design pattern.

GitHub

View Github