Women of Marvel

Displays the Women of Marvel Comic book in a iOS application made with UIKit. This also includes unit tests and a UI test that uses the Builder Pattern.

Technical Notes

This application uses the free Marvel Developer API.

Apple Libraries Used

  • CommonCrypto is used in order to return a hash string that is required to be sent in the query parameters of the Marvel Developer API.
  • The Combine framework is used for data binding.

Third Party Dependencies

Cocoapods is used for integrating third party libraries.

  • Kingfisher
    • Used for caching and retrieving images from the internet easily
  • SwiftKeychainWrapper
    • Easily read and write data to the Keychain, used to store public and private API keys

How to add your developer keys

In order to not expose our sensitive data, I’ve created a file called Config.swift that holds the values of my public and private API keys. This config file is then added to the .gitignore file. If you do accidently commit and push sensitive data to your repo, consider it compromised and generate a new API key.

How to replicate the config file:

import Foundation

enum CONFIG {
    static let privateKey = "<YOUR PRIVATE KEY HERE>"
    static let publicKey = "<YOUR PUBLIC KEY HERE>"
}

Screenshots

Screenshot of the iOS Application showing Women of Marvel's book title, description and cover image

Improvement Opportunities

  • Add a scroll view to the root view to scroll through the content on smaller devices
  • Test and update code to work as expected on when Larger Text is enabled
  • Add Dark Mode support

GitHub

View Github