The app helps users browse and buy NFT (Non-Fungible Token). The purchasing functionality is simulated using a mock server.
Application goals:
- viewing NFT collections;
- viewing and purchasing NFT (simulated);
- viewing the ratings of other users;
- view the user profile.
- The application show a catalog of NFTs structured as collections.
- The user can view information about the collection catalog, the selected collection and the selected NFT.
- The user can add NFTs to favorites.
- The user can remove and add items to the cart and place the order (the purchase is simulated).
- User can view other users' rating and users' information.
- The user can view his profile, including information about favorites and NFTs owned by him.
Additional functionality:
- localization
- dark theme
- onboarding screen
- an alert with an offer to rate the app in the AppStore
- custom launch screen
- Swift, UIKit
- Architecture: MVP
- Code layout
- UITableView, UICollectionView, UITabBarController, WKWebView, UIPageController, UIScrollView
- URLSession
- UserDefaults
- Multithreading
- Swift Package Manager
- GCD
- YandexMetrica
- Kingfisher
- Localization
- Light/Dark theme
Installation and launch via Xcode. Required dependencies are downloaded using Swift Package Manager.
Minimum system version is iOS 14.0.
Profile
Catalog
Cart
Statistics