This project contemplates the creation of an application to consult the GitHub API and show the most popular swift repositories of GitHub.
- There will be a button to start the search.
- The application show the results according to server response
- Swift 5
- Target: iOS 13.0
- Xcode 11
To execute the project you have to:
- Clone the repo or download the ZIP file on a Mac
- If you choose to download the ZIP file, unzip it
- Open the file
RepositoriesAPI.xcodeproj
with Xcode 11 - Pick a simulator (choose an iPhone with iOS 13 or later)
- Run the project (CMD+R)
To run some unit tests you have to:
- Open the file
RepositoriesAPI.xcodeproj
with Xcode 11 - Run tests (CMD+U)
- MVVM with closures
<SCENE_NAME>
├── View
│ └── <SCENE_NAME>View.swift
└── ViewModels
│ └── <SCENE_NAME>ViewModel.swift
└── Model
└── <SCENE_NAME>Model.swift
- Navigation: Coordinator
├── Commom
│ └── Coordinator.swift
- Network: Service and protocol
<SCENE_NAME>
├── Service
│ └── <SCENE_NAME>Service.swift
│ └── GatewaySetup.swift
└── Protocol
│ └── <SCENE_NAME>ServiceProtocol.swift
- XIB
GitHub REST API v3 Usage in this project
-
Find repo from language by most popular
{baseURL}/search/repositories?q=language:swift&sort=stars&page=1
-
Find readme
{baseURL}/repos/{login}}/{name}/contents/README.md?ref=master
- HTTP Client
- URLSessionProtocol
- Service and Protocol
Fastlane is the easiest way to automate tests, generate coverage reports, beta deployments and releases for your iOS app
In the Terminal app execute: fastlane tests
In the Terminal app execute: fastlane screenshots