apparition47 / ViperTaskManager

Swift VIPER architecture demo with dependency injection

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ViperTaskManager

The app will help users manage tasks. They will be able to make projects on the app and then add tasks to them. The app will fetch data from a server and display it in-app.

Written in Swift using VIPER. Tested on Xcode 10.1.

Features

  • Swinject - Dependency Injection
  • RealmSwift - Persistent Storage
  • SwiftFetchedResultsController (NSFetchedResultsController for Realm written in Swift)
  • Alamofire - Networking
  • UIStoryboard + XIB
  • UIAppearance
  • MaterialColor -> CocoaPods
  • SnapKit

How to use

  1. Setup and run TasksServer.
  2. If you're not running the app and the server on localhost, edit the following:

Constants.swift

let tasksServerEndpoint = "http://<TASK SERVER URL>" + ":8090" + "/"

Info.plist

<key>NSAppTransportSecurity</key>
<dict>
	<key>NSExceptionDomains</key>
	<dict>
		<key>TASK SERVER DOMAIN HERE></key>
		<dict>
			<key>NSTemporaryExceptionAllowsInsecureHTTPLoads</key>
			<true/>
		</dict>
	</dict>
</dict>
  1. Ensure you have CocoaPods then pod install
  2. Run the app.

License

Apache 2.0

About

Swift VIPER architecture demo with dependency injection

License:Apache License 2.0


Languages

Language:Swift 99.1%Language:Ruby 0.9%