Skip to content
This repository has been archived by the owner on May 24, 2018. It is now read-only.

ustwo/vip-demo-swift

Repository files navigation

License Build Status codecov.io

VIP Demo

Swift sample app demonstrating View Interactor Presenter architecture for iOS. See Clean Swift for more info.

Description

The app downloads Artists and Albums using Last.fm's API and presents them in a UITableView using a master detail user interface.

We started by using the excellent VIP templates from Raymond Law via Clean Swift but found ourselves modifying parts to speed up development, encapsulate the workers and routers better and to follow our code style guidelines.

You can find our modified VIP Xcode templates here.

Demo

Requirements

API Key

You will need an API key from Last.fm in order for the app to work.

Register here for an API Key and update the apiKey field in the LastFMAPI.swift as follows

static let apiKey = "INSERT_YOUR_API_KEY_HERE"

Environment

iOS 9.0+

Libraries & submodules

(See Podfile for more info)

Usage

You won't need CocoaPods to run the project but if you do run into issues you can install dependencies as follows:

pod install

Note. If you get don't have CocoaPods installed you can install it using Ruby Gems as follows:

gem install cocoapods --version 1.1.0rc2

Configuration

The VIPDemo target should be used for running the project.

Documentation

The source code files are documented using Xcode 8's built in code documentation support for Swift.

Also see here for a summary of how we went about learning VIP architecture and building this sample app.

Contributing

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. See the Code of Conduct file.

Maintainers

Contact

open.source@ustwo.com

License

VIP-Demo is released under the MIT License.

See License and Notice.

About

Swift sample app demonstrating VIP architecture for iOS.

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published