Jobsity Challenge

Jobsity is an app based on the iOS Challenge of Jobsity. It is an iOS native app that consumes the TV Maze REST API and implements the features mentioned on the Features section.

Demo

Features

Mandatory

  • List all of the series contained in the API used by the paging scheme provided by the API.
  • Allow users to search series by name.
  • The listing and search views must show at least the name and poster image of the series.
  • After clicking on a series, the application should show the details of the series, showing the following information:
  • Name
  • Poster
  • Days and time during which the series airs
  • Genres
  • Summary
  • List of episodes separated by season
  • After clicking on an episode, the application should show the episode’s information, including:
  • Name
  • Number
  • Season
  • Summary
  • Image, if there is one

Bonus

  • Allow the user to set a PIN number to secure the application and prevent unauthorized users.
  • For supported phones, the user must be able to choose if they want to enable fingerprint authentication to avoid typing the PIN number while opening the app.
  • Allow the user to save a series as a favorite.
  • Allow the user to delete a series from the favorites list.
  • Allow the user to browse their favorite series in alphabetical order, and click on one to see its details.
  • Create a people search by listing the name and image of the person.
  • After clicking on a person, the application should show the details of that person, such as:
  • Name
  • Image
  • Series they have participated in, with a link to the series details.

Plus

  • Native Image Cache
  • Snapshot Testing

Dependecy Management

Swift Manager Package was the chosen for management of project dependencies, as it brings the benefit of being fully integrated with Xcode, it was a more productive work tool. Below are the dependencies of this project:

"Future" Improvements

  • Dark Mode (now it's ligh mode only);
  • Continuos Integration.