AppCoreKit is the result of WhereCloud's extensive experience building great mobile apps in a variety of business domains. We packaged great implementations of the most common design patterns, so you don’t have to reinvent the wheel every time you sit down and start a new iOS project.
One of the design goals of AppCoreKit is to be data driven – to be able to construct most of the application features by using a descriptive language (description and configuration) over programming. The dynamic nature of the “data files” allows them to be reloaded (and debugged) on the fly without having to leave the application environment, increasing productivity.
AppCoreKit makes the most out of the Objective-C environment by using its powerful runtime capability to do all the heavy lifting.
AppCoreKit provides lots of useful additions to the Cocoa frameworks, such as introspection and runtime features; automatic and lazy conversions between object types; smart collections that can automatically load their content; and lots of extensions to core objects.
AppCoreKit relies heavily on the concept of models; the core of the MVC pattern. Models in AppCoreKit can be described by configuration and the framework takes care of the rest. Models can be automatically validated, saved, extended with metadata or “mapped” against each other, so you don’t have to write any form of conversion.
AppCoreKit provides a performant Key/Value store backed by Core Data using a generic data model, so you can use it out-of-the-box using object Models. The KV store supports all Core Data features, including queries for objects and support for iCloud.
AppCoreKit provides a suite of controllers built on top of UIKit, so you don’t have to deal with the hassle of configuring tables and loading remote data; everything is done for you. The controllers can be extended to support any type of collection, their representation and how to fetch their remote data.
AppCoreKit provides an efficient implementation of the concept of “data bindings”. Data bindings synchronize changes between objects or can execute specific code. It is particularly useful in the context of an MVC, where changes in models need to be reflected by the user interface.
AppCoreKit provides a simple API so that you don’t have to write any extra code; no listeners, no observers, no notifications, just bindings.
AppCoreKit provides native cascading stylesheets, similar to CSS, to theme your iOS application without having to write a single line of Objective-C code. Stylesheets are represented in a JSON-compatible data format and allow the targeting and customization of any part of the user interface. Thanks to their cascading nature, you can built powerful theme templates to be reused across other applications.
AppCoreKit provides a powerful real-time, in-app debugger to inspect and edit the styling of all elements on the screen, on the iOS simulator or on a device. It has never been this easy to theme your iOS application.
If you'd like to have a quick look at the documentation of the framework, you can review a preliminary documentation set.Review documentation