Project information
- Category: Full Stack Mobile Development
- Client Freelance
- Project date: 18 April, 2023
- Project URL: Rick and Morty App
-
*Images shown are not accurate to application*
Swift Rick & Morty Universal Application
Synopsis
A comprehensive, cross-platform application—compatible with iOS, macOS, and iPadOS—that serves as a rich interface for exploring the Rick and Morty universe via its public API.
The main purpose was to use excersize Swift's extensive language to develop an appealing paplication. The application used all possible methods to display information, which includes, Swift, SwiftUI, StoryBoard, UiKit and programmatical UIKit to display the information.
Technical Specifications
- Language: Crafted in Swift, exhibiting robustness and modern syntax.
- Frameworks: Utilizes a harmonious blend of UIKit and SwiftUI for a seamless user experience.
- Architectural Pattern: Implements the MVVM design pattern, ensuring clean code and efficient data flow.
- Dependencies: Zero external libraries, underlining the app's self-reliance.
- Pagination: Integrated pagination functionality to efficiently handle large data sets.
- Layout: Designed with Auto Layout to ensure responsive and adaptive UI across devices.
- Development Environment: Developed in Xcode 14, leveraging the latest IDE features.
- API: Makes use of the open-source Rick & Morty API for authentic data retrieval.
- Backend:The application uses Swift CoreData which stores the users favourites in to an datamodel file that supports SQLite. This is then loaded using NSFetchRequest and Swift CoreData Context Manager to fetch and retrieve the users favourite character to be viewed offline.
Core Features
- Characters: In-depth profiles featuring individual character details.
- Locations: Interactive maps and metadata related to various Rick & Morty universe locations.
- Episodes: Comprehensive episode guides with relevant information.
- Settings: Customizable user settings for a tailored experience.
- Search: Robust search functionality to quickly locate desired information.
- Favorites: Enables users to bookmark their preferred characters, locations, and episodes.
Learning Objectives
As each section unfolds, you will gain insights into best practices for design, decision-making trade-offs, and the separation of concerns. The project serves as a practical guide for deploying multi-platform applications (macOS, iOS, iPadOS).