/MartianNews

Project made to demonstrate Swift skills in API integration, JSON manipulation, display of information in a TableView, and common design patterns.

Primary LanguageSwift

NYT Take Home Project: Martian News

An app by Zoilo Mercedes

This app was created using Xcode 10.1 and Swift 4.2.

  • The app has 3 views:
    • a list of articles
    • an individual article view
    • a settings view, where you may change the language.
  • The language is changed dynamically upon selecting one in the settings view.
  • The language change is persisted across runs of the app using UserDefaults.

More Info on the app:

  • It is implemented natively, without webviews.
  • It uses cocoapods for dependency management and has SwiftLint added for style enforcement.
  • It uses a variety of design patterns, such as the Coordinator pattern, delegate pattern, MVC pattern, and observer pattern.
  • It follows SOLID principles as closely as possible.
  • It was profiled using Xcode's Instruments tool in order to avoid any retain cycles and/or memory leaks.

Please feel free to contact me if any questions or issues arise.