Skip to content

leonardoobaptistaa/upcoming-movies

Repository files navigation

Upcoming Movies

This app list upcoming movies and provide details after selecting one.

Screenshots

Portrait

drawing drawing drawing

Landscape

drawing drawing drawing

How to run

Pre requisites

  • Xcode 9.4

Build

Open Xcode workspace file Upcoming Movies.xcworkspace and cmd + b.

ps: This project use Cocoapods but all pods are commited, so you don't need to do a pod install

Run

cmd + r

Test

This project have unit and ui testing.
To run all tests press cmd + u.

Third-party libraries

APP

  • Alamofire - Networking library to make requests. Is used to access The Movie Database API more easily.
  • AlamofireObjectMapper - Map JSON to Swift classes. Is used to convert response JSON to Movie class.
  • AlamofireImage - Download and display images. Is used to download and display movie posters easily.

Tests

  • Nimble - Nimble provides better tests readability using more expressive asserts.
  • OHHTTPStubs - OHHTTPStubs stubs request so we don't depend on the internet to run unit tests.
  • Swifter - Tiny http server engine written in Swift. It is used to provide fake JSON responses, so we can test UI without depending on the internet.

Nexts steps / Improvements

  • Improve user experience on slow networks by adding a loading indicator when it's loading more movies.
  • Improve user experience by dealing with internet and API errors.
  • On MovieDetailViewController, set viewInfo's size accordingly to lblInfos text size.
  • Load genres list dynamically from API.
  • Add Localization strings to support more languages.
  • Add search (the optional item).

About

iOS app that shows upcoming movies and some information

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published