This app lists all existing Cats submitted to CATaaS API (https://cataas.com/). Users can see thumbnails of cats, tags and image details and tap on them to find out more details about each one. Additionally, users can interact with the image generation API to modify the image and add funny text to the cats.
- List of Cats: Paginated list of cats and tags.
- Details View: Shows more details about the cats including a larger image, tags, and allows modifying the images using the API.
- Localization: UI element texts are localized to English and Spanish, according to device preferences.
- App Themes: UI elements adapt to dark and light themes.
- Tests: Project includes unit tests covering the majority of the code and mocking API calls.
- MVVM
- SWIFTUI
- SwiftData
- Observable protocol object (https://developer.apple.com/documentation/Observation)
- Networking
- API Mocking
- Infinite/Paginated scroll
- API error management/recovery
- Localization
To run this project on your local machine, follow these steps:
-
Clone the Repository: First, clone this repository to your local machine using Git.
-
Open the Project: Open the
MeowMarket.xcodeproj
file in Xcode. -
Wait for SPM Dependencies: Once the project is open in Xcode, wait for the Swift Package Manager (SPM) to fetch and build all the dependencies. This might take a few minutes.
-
Run the Project on Simulator: After all dependencies are resolved, select an iOS Simulator from the Xcode toolbar and click the run button to build and run the project on the simulator.
Enjoy watching Cats in the app!