/Xero

Primary LanguageSwift

Xero - Weather App

Tasks Completed

Tasks worked on:

  • Architect and implement the application to use the MVVM Design Pattern (Clean Swift Code) - All objects are Codable

  • Master / Detail Screens

  • Retrieve current Location

  • Retrieve Weather Details for current location and other cities (in code)

  • Retrieve Weather Forecast and display horly weather for the day

  • Retrieve and display all weather conditions

  • Display weather icons accordingly

  • Restructure the application code folders structure

  • Decode and map modles using Codable

  • Simplify API End Point

  • Create API Weather Client for the required endpoints

  • Create custom viesw and use Autolayout

  • Create custom cells using NIBs

  • Add a number of extentions including elegant ways to register for UICollectionCellViews, etc..

  • Add Theme pattern

  • Added error handling using try,catch blocks in API

  • Add Localized file

  • I didn't have time because of work to integrate Carthage for Quick and Nimble - please review other recent code challenges which such as REA (TramTracker for Quick and Nimble unit Test Integration)

I belive I implemented very clean Swift code. I have implemented the hard parts and I am at a point where I can implement a lot more functionalties with a much enhanced UI but only because of time constraints I wasn't able to.

Implemented using Xcode Version 10.2.1 (10E1001) and Swift 5.0