Introduction
Are you software developer coming from another platform to iOS? Are you beginner developer trying to catch up with all the latest technologies and libraries in iOS world and begin developing production ready apps as soon as possible? Do you want to bring your whole team on the same page without spending months on inventing and explaining your own “corporate” rules on iOS development? This guide is for you!
This guide is about how to write iOS app from scratch, making your code done right from the beginning, keep it clean, scaleable, reliable.
Essential tools
See below list of essential libs that will help you get up and running with development of any kind of iOS app.
-
ProjectGenerator Describe Xcode project declaratively in pure Swift.
-
UniFlow App architecture done right, inspired by Flux (from Facebook).
-
Requirement Describe requirements in a declarative, easy-readable format.
-
Testing A more expressive and readable way to describe expectations in Xcode unit tests.
-
ValidatableValue Generic value wrapper with built-in validation.
-
StaticState Turn any object into a discrete system where each state is a static data container.
-
FunctionalState Turn any object into a discrete system and describe its states in a declarative style.
-
MKHOperationFlow Lightweight async serial operation flow controller.
-
MKHAPIClient HTTP-based API client for Cocoa and Cocoa Touch.
-
MKHSyncSession Tiny extension for NSURLSession that enables synchronous task execution.
-
MKHViewEvents Set of helpers for adding UIControl-based event handlers and gesture recognizer handlers on iOS.
-
MKHOptionalAssign Custom assign operator that safely unwraps and assigns non-nil optionals only.
-
MKHTypedKey Generic key for explicit type safe access to values from any key-value storage.
-
MKHEntityManager Lightweight model objects manager that helps maintain consistency.
-
MKHStoryboardHelpers Helpers for type-safe storyboard usage in Xcode projects.
-
MKHDesignableAnimation Set of helpers that let you automate view animations through designing key view states using Interface Builder.
Credits
Author of the libs listed on this page is Maxim Khatskevich.