Skip to content

ZarinPal Mobile Test Challenge Code. GitHub with GraphQL and SOLID Principles.

License

Notifications You must be signed in to change notification settings

farshadmb/ZarinPal-Challenge

Repository files navigation

ZarinPal-Challenge

ZarinPal-Challenge is a Swift and SwiftUI client App for represent User GitHub Repository using GitHub GraphQL API and Authentication API. Application contains the three layers which are the DataLayer, Domain Layer or Repository Layer and 'Presentation Layer`.

Requirements

  • Xcode 11.2 or laster.
  • Swift 5.1 or later.
  • iOS 13 or later.

Installation

  • Step 1: Download or clone the project github repository

      $ git clone https://github.com/farshadmb/ZarinPal-Challenge.git
  • Step 2: Install Cocoapods via gem install cocoapods --user-install

    then run $ pods install command.

  • Step 3: Open ZarinPan-Challenge.xcworspace

  • Step 4: Run and enjoy the app.

Technology use in this project

  • SwiftUI
  • Combine
  • RxSwift
  • Clean Code
  • Clean Arch
  • Modern MVVM

- Gitwokflow

#1 PR Presentation Layer into Develop

#2 PR Data Layer into Develop

#3 PR Domain or Repository Layer into Develop

#4 PR ViewModel Layer

#5 PR Develop to Master