Skip to content
Movie Finder iOS app with TMDB API
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
MovieFinder.xcodeproj
MovieFinder.xcworkspace
MovieFinder
MovieFinderTests
MovieFinderUITests
.gitignore
Podfile
Podfile.lock
README.md
sort_project.py
swiftlint.yml

README.md

Movie Finder

This is a demonstration purpose only app. This app consumes The Movie Database API

Dependencies

Please update your local pods by running pod repo update followed by pod install before opening the MovieFinder.xcworkspace

API Key

Since it is not safe practice to check in API key into version control, I have utilized CloudKit to store the key and retrieve from it when first needed. This API key is then safely stored into Keychain and from that point on, used from Keychain as required.

Note

If you are unable to fetch API Key from CloudKit, it could be because of my developer certificate not matching with what you have. In that case to make it simpler to run the app, please add my (or your own) TMDB API key in ApiKey.swift#fetchAndSave(completionHandler:) function. You will find proper instructions on how to do that in that file.

Considerations

"Now Playing" movies list is stored in local CoreData DB once fetched. Since that list doesn't change very often, another API call won't be made unless data in CoreData is older than 24 hours. Please note, search results are not stored in local database otherwise it will explode at some point of using the app.

Possibilities to improve experience

  • Show more data on details page.
  • Some movie records also contain videos. If a movie has one, that can be shown instead of a backdrop image.
You can’t perform that action at this time.