Template Preview
Swift

VIPER Architecture iOS Project

The project simulates a simple authentication and dashboard system using VIPER architecture:

  • The Login screen validates users with credentials.
  • The Register screen allows new users to register and saves their data locally using UserDefaults
  • The Dashboard screen displays random images fetched from a public API.
  • The Add Image screen allows the user to add a new image manually, store it locally, and display it in the Dashboard along with API images.

This project focuses on building a modular iOS architecture using VIPER while demonstrating networking, local storage, and dynamic UI updates.

  • Login Screen
  • The screen takes Email and Password as input.

  • Register Screen
  • The user enters their Email and Password in text fields.

  • Dashboard Screen
  • After logging in successfully, the app navigates to the Dashboard using "UIHostingController", since SwiftUI screens are embedded inside UIKit.

  • Add Image Screen (Sheet View)
  • The user opens the Add Image form by tapping the “Add Image” button on the Dashboard.

  • Technologies Used
  • Swift
  • SwiftUI
  • VIPER Architecture
View on Github