/Image-App-Unsplash

A simple iOS app that allows users to keep their favorite images from Unsplash

Primary LanguageSwift

Image App-Unsplash

A simple iOS app that allows users to keep their favorite images from Unsplash

Platform Languages

Image App-Unsplash is a demo app for dating.

Installation

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit their website. To run the project:

  • Open terminal
  • cd into your top-level project directory
  • Run the followinfg command: pod install
  • After installing the pods build the app and run it.
  • You will see a login validation screen enter username and password any characters > 3 and then you will be redirect to image feed view.

Demo

Requirements

  • iOS 13.0+
  • Xcode 11+
  • Swift 5+

Features

  • Used GitHub for version control(you can check the git version history)
  • Unsplash Images API Using Pagination
  • Card View For Images
  • A dedicated screen to view liked images
  • URL / JSON Parameter Encoding
  • FireStore Integration as a backend DB to store liked images
  • Download Images using AlamofireImage
  • Network Requests using Alamofire

Cool Features

  • Login screen for user authentication
  • Like Swipe View
  • Swipe Right To Like An Image
  • Swipe Left To Skip An Image

Design Pattern: Model-View-ViewModel (MVVM)

is a structural design pattern that separates objects into three distinct groups:

  • Models

    • hold application data. They’re usually structs or simple classes.
  • Views

    • display visual elements and controls on the screen. They’re typically subclasses of UIView.
  • View models

    • transform model information into values that can be displayed on a view. They’re usually classes, so they can be passed around as references.

Dependencies

Improvements

  • User authentication using Firebase.
  • Display a empty image or logo for no data.
  • No Internet Connectivity Handling
  • Add a button to undo swipe card action
  • Preview liked image with details in full screen