AeroGear iOS Cookbook

Recipe app build with Xcode7

The AeroGear iOS cookbook is a list of recipes to quick start your iOS AeroGear experience.

Each recipe is a complete iOS app. The goal of the recipes is to show you how easily you can use iOS AeroGear libraries and how it helps to achieve clean code. The app features are very lean and most of UI is kept to basics in order to focus on AeroGear library usage.

Project Info
License: Apache License, Version 2.0
Build: Cocoapods
Documentation: https://aerogear.org/docs/guides/aerogear-ios-2.X/
Issue tracker: https://issues.jboss.org/browse/AGIOS
Mailing lists: aerogear-users (subscribe)
aerogear-dev (subscribe)

Cookbook apps

Recipe Core Push Security Platform
Authentication: login to backend using basic/digest auth. - - basic/digest iOS7 [1], iOS8, iOS9
ChuckNorrisJokes: Simple demo for http usage and serialization. http - - iOS7 [1], iOS8, iOS9
Jedi: websocket based synchronization based DiffMatchPatch algo. Declined in 2 versions: JsonPatch RFC based or DiffMatchPatch text based. sync - - iOS8, iOS9
Shoot: oauth2 sharing photo, web-app to display photos. http, oauth2 - - iOS7 [1], iOS8, iOS9
SharedShoot: login using OpenId Connect to download Shoot'nShare photos. http, oauth2 - - iOS7 [1], iOS8, iOS9
Weather: geo-loation based app to fetch information using http lib. http - - iOS7 [1], iOS8, iOS9
Unified Push HelloWorld: Simple demo of Push registration and notification handles with framework as dependencies. - push - iOS7, iOS8, iOS9
Unified Push Quickstarts: Complete demo of Push notification with server side using UnifiedPush server. - Push - iOS7, iOS8, iOS9
Two-Factor: Demo OTP with Keycloak server. - OTP - iOS7, iOS8, iOS9
Howdy: Tell me how it is going for you. Howdy demoes text input notification with iOS9 on your phone and even on Watch. - Push - iOS9

Note [1]: http and oauth2 libraries are written in Swift and packaged as dynamic frameworks. Although you can deploy Swift app using dynamic frameworks on iOS7 device in dev, Apple Store doesn't accept them (min requirement: from iOS8+). The workaround for iOS7 is to include http, oauth2 code directly in your Swift app.

Most of the recipes illustrate one main topic which is listed in bold in the table. Some examples demonstrate other aspects of the libraries so it is also listed in the different topics.

Some of the demos uses a backend.

Some of the demos listed below are hold in separate repo, but as they follow the same philosophy (illustrate AeroGear libraries usage) we put a placeholder in the recipe cookbook for completeness. HelloWorld, Push-Quickstarts have been added as git submodule, to fetch them:

$ git submodule init && git submodule update

Building and installing each app

The demos utilize cocoapods for handling their dependencies. On the root directory of each demo, simply execute the following:

bundle install
bundle exec pod install

and then double click on the generated .xcworkspace to open in Xcode.

Documentation

For more details about the current release, please consult our documentation.

Development

If you would like to help develop AeroGear you can join our developer's mailing list, join #aerogear on Freenode, or shout at us on Twitter @aerogears.

Also takes some time and skim the contributor guide

Questions?

Join our user mailing list for any questions or help! We really hope you enjoy app development with AeroGear!

Found a bug?

If you found a bug please create a ticket for us on Jira with some steps to reproduce it.

and then double click on the generated .xcworkspace to open in Xcode.