Marvel Comics App is an iOS application that allows users to explore Marvel characters, events, and comics. The app integrates with the Marvel API to display various content categories and it provides Firebase-based authentication for user login and registration. Users can manage their favorite characters within the app.
- List Marvel characters
- Display detailed information about each character on a character details page
- User registration and login using Firebase Auth
- Manage favorite characters
- Load character images asynchronously with
AsyncImage - Display content categories on the main screen without page navigation
-
Clone the Repository:
git clone https://github.com/sulekaptan/MarvelApp.git cd MarvelApp -
Install Dependencies: The project uses Swift Package Manager for dependency management.
- Open the project in Xcode, right-click the project file, and select "Resolve Package Dependencies."
-
API Key and Firebase Configuration:
- Add your Marvel API key in
API.swift. - Download
GoogleService-Info.plistfrom Firebase and add it to the root of the project directory.
- Add your Marvel API key in
- The HomeView displays various Marvel content categories. Each category shows a name and image, which is loaded using
AsyncImage. - This screen lists characters with pagination, utilizing AsyncImage to load character images.
- Handles user login and registration through
Firebase Authentication. - Basic configuration to fetch data from the
Marvel API.
The app follows the MVVM (Model-View-ViewModel) architecture pattern.
- Model: Contains data structures matching the API response.
- ViewModel: Handles API calls, processes data and prepares it for the UI.
- View: Builds the user interface and displays data from the ViewModel.
- iOS 14.0+
- Xcode 12.0+
- Swift 5.0+
- Make Favorites Functional
- Implement Send Feedback Functionality
- Implement Notifications
- Add Localization
- Implement Logout Functionality
- Implement Delete Account Feature