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
- 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).
- 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.
- 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