Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ferdinand1995/dota2-heroes

The repository contains exercises related to Modular Architecture using Swift Package Manager, Memory Optimization on loading an image, and Using Combination Framework Practices in the Development of a iOS Project
https://github.com/ferdinand1995/dota2-heroes

combine-framework ios mvvm swift swift-package-manager swift5 uikit

Last synced: 23 days ago
JSON representation

The repository contains exercises related to Modular Architecture using Swift Package Manager, Memory Optimization on loading an image, and Using Combination Framework Practices in the Development of a iOS Project

Awesome Lists containing this project

README

        

# Dota Heroes
## Summary

Open Source iOS Apps: An application for viewing Dota 2 Heroes.

This project utilizes [OpenDota API](https://docs.opendota.com/), which is also an [Open Source project](https://github.com/odota/core/).

## Coverage
What this project is cover ?
* List of Dota 2 Heroes.
* Filter based on Dota 2 Heroes Roles.
* Detail page for each Dota 2 Hero

## Prerequisites
In V1.0.0 - Developer has no intention using [Cocoapods](https://cocoapods.org/) as 3rd party dependencies.

Developer has an expectation with the [Swift Package Manager](https://swift.org/package-manager/) as the official 3rd party dependencies for [Xcode](https://developer.apple.com/xcode/).

#### Requirements
* Xcode 12+
* Swift 5+

#### Network Dependencies

* Custom URL Session

#### 3rd Party Dependencies

* [Kingfisher 7+](https://github.com/onevcat/Kingfisher/)

## Project Roadmap

### Refactor History

* [x] April, 2023
* [x] May, 2023

### Architecture

* [x] [MVVM](https://benoitpasquier.com/ios-swift-mvvm-pattern/)
* [ ] [Unit Testing](https://benoitpasquier.com/unit-test-swift-mvvm-pattern/)
* [x] [Error Handling](https://benoitpasquier.com/error-handling-swift-mvvm/)
* [x] [Coordinator Pattern](https://benoitpasquier.com/coordinator-pattern-swift/)
* [ ] Protocol-Oriented Programming