Skip to content

Latest commit

 

History

History
35 lines (25 loc) · 2.18 KB

README.md

File metadata and controls

35 lines (25 loc) · 2.18 KB

CatStatusCodes

App that shows different status codes, using the images received from: https://http.cat

The project contains two different CatStatusCode apps: One built in UIKit and the other one using SwiftUI

Additionally, the common components are being shared via swift packages:

  • CatStatusCodesAPI
  • CatStatusCodesModels
  • CatStatusCodesStorage

Features

  • Show list of cat status codes, which updates its row image and last seen text whenever user opens the details screen
  • Visited cat status codes go to the top of the list, where they are still shown ascending by status code
  • The text shown in the details is generated by http://www.catipsum.com, and it's just used as a filler to make the design nicer (just an image a status code seemed to empty and didn't give room to get creative with the screen design).

UIKit

  • Tmage shows an activityIndicator while loading, and places a placeholder image if the request fails. If the request is successful, it shows the corresponding cat status code image
  • When the image fails to load, an alert is shown and the user can either retry or just cancel it and still see the details page
  • The effect applied to the details screen is a parallax effect, where the image slightly shrinks while scrolling up.

SwiftUI

  • The image in details shows an activity indicator while loading the image in the details screen, but does not show an alert if downloading an image fails.
  • When the status code of one of the cats is somewhere not within the range 200..<300, rain effect is shown.
  • The effect applied is sticking the details screen header image while the content scrolls up, which additionally has some rounded corners to simulate some sort of card effect

Cats (UIKit) - iPhone 14 Pro -- iPad Pro (12.9)

Cats (SwiftUI) - iPhone 14 Pro -- iPad Pro (12.9)