• This repository has been archived on 21/Aug/2021
  • Stars
    star
    326
  • Rank 124,766 (Top 3 %)
  • Language
    Swift
  • License
    MIT License
  • Created over 8 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An example to use Swinject in MVVM architecture with ReactiveCococa

SwinjectMVVMExample

[OBSOLETED] This example app is obsoleted and no longer follow the latest Xcode/Swift/Swinject versions.


This is an example project to demonstrate dependency injection and Swinject in MVVM (Model-View-ViewModel) architecture with ReactiveCocoa. The app asynchronously searches, downloads and displays images obtained from Pixabay via its API.

Screen Record

Requirements

(Xcode 7 version with Swift 2.2 is here)

Setup

  1. Download the source code or clone the repository.
  2. Run carthage bootstrap --no-use-binaries --platform iOS.
  3. Get a free API key from Pixabay. It is displayed in the API documentation page after you log in there.
  4. Create a text file named Pixabay.Config.swift with the following content in ExampleModel folder in the project. The string "YOUR_API_KEY" should be replaced with your own key.

Pixabay.Config.swift

extension Pixabay {
    internal struct Config {
        internal static let apiKey = "YOUR_API_KEY"
    }
}

Blog Posts

The following blog posts demonstrate step-by-step development of the project.

The following repository has a simplified version of SwinjectMVVMExample to exactly follow the blog posts.

yoichitgy/SwinjectMVVMExample_ForBlog

Icon Images

Icon images used in the app are licensed under Creative Commons Attribution-NoDerivs 3.0 Unported by Icons8.

License

MIT license. See the LICENSE file for details.