Get Updates By E-mail 

iOS Development Libraries

This category mainly features open source libraries for iOS development. Any library relevant for iOS developers can be posted here, that includes libraries specifically for game development on the iPhone and iPad.

If you would like to add a library please submit it here.

TempiBeatDetection – A Swift Library For Real-Time Song Beat Detection

  •  
  •  
  •  
  •  
  •  

TempiBeatDetection is an open source Swift library from John Scalo that allows for real-time and audio file beat detection.

TempiBeatDetection utilizes the Accelerate Framework and AVFoundation for audio processing, and in testing does a very good job of detecting song beats with good performance.

Here’s an image from the readme showing off the included example iPhone app:
TempiBeatDetection

You can find TempiBeatDetection on Github here.

A great library for any apps that utilize beat detection.


  •  
  •  
  •  
  •  
  •  

Sensitive – Swift Library That Dramatically Simplifies Implementing Common Gesture Support

  •  
  •  
  •  
  •  
  •  

Sensitive is an open source Swift library from Igor Matyushkin that provides a very simple syntax for handling the most common gestures.

With Sensitive you don’t need to worry about utilizing UIGestureRecognizer but rather simply add the Sensitive gesture handlers to a UIView, set your callback, and configure some variables.

This example shows how one would set up a simple double tap gesture recognizer that changes the view color.:

let view = UIView()

view.onTap({ (tapGestureRecognizer) -> Void in
    // Handle tap on view
view.backgroundColor = .greenColor()
}) { (tapGestureRecognizer) -> Void in
    // Configure gesture recognizer
    tapGestureRecognizer.numberOfTouchesRequired = 1
    tapGestureRecognizer.numberOfTapsRequired = 2
}

Within sensitive are gesture handlers for tap, swipe, pan, pinch, and rotation gestures.

You can find Sensitive on Github here.

A nice simple way to handle gestures with a clean Swift syntax.


  •  
  •  
  •  
  •  
  •  

CameraManager – Swift Library That Simplifies Managing The iOS Camera Configuration

  •  
  •  
  •  
  •  
  •  

Camera Manager is an open source Swift library from Imaginary Cloud that makes setting up the iOS camera for use with a custom camera view dead simple.

With Camera Manager configuring the camera is as simple as changing variable values, and there are also helpers to quickly check the current state of various camera options.

This snippet shows how one could switch the camera flash mode:

cameraManager.flashMode = .Off
cameraManager.flashMode = .On
cameraManager.flashMode = .Auto

You can find CameraManager on Github here.

A great library for managing the iOS camera.


  •  
  •  
  •  
  •  
  •  

Gifted Messenger – Extensive Chat UI Framework For React Native

  •  
  •  
  •  
  •  
  •  

Gifted Messenger is an open source React Native framework with an extensive feature set for building chat app user interfaces on iOS and Android.

Gifted Messenger provides the standard table style UI with chat bubbles, avatars, and a text input, but also has many extras such as clickable phone numbers, urls, and images.

This animation shows the interface in action on iOS:

GiftedMessenger

You can find Gifted Messenger on Github here.

A great library for creating chat user interfaces with React Native.


  •  
  •  
  •  
  •  
  •  

AIToolBox – Swift Based Library Providing An Extension Collection Of AI Helper Modules

  •  
  •  
  •  
  •  
  •  

AIToolBox is an open source library Swift library from Kevin Coble providing a multitude of AI modules.

The modules include genetic algorithm helpers, graphs/trees, alpha-beta, neural networks and more. The Accelerate framework is used to speed up computations.

This listing from the readme shows the different algorithms included:

Graphs/Trees
    Depth-first search
    Breadth-first search
    Hill-climb search
    Beam Search
    Optimal Path search

Alpha-Beta (game tree)

Genetic Algorithms
    mutations
    mating
    integer/double alleles

Constraint Propogation
    i.e. 3-color map problem

Linear Regression
    arbitrary function in model
    convenience constructor for standard polygons
    Least-squares error

Neural Networks
    multiple layers, several non-linearity models
    on-line and batch training
    simple network training using GPU via Apple's Metal

Support Vector Machine
    Classification
    Regression
    More-than-2 classes classification

K-Means
    unlabelled data grouping

Principal Component Analysis
    data dimension reduction

Markov Decision Process
    value iteration
    policy iteration
    fitted value iteration for continuous state MDPs - uses Linear Regression class for fit
            (see my MDPRobot project on github for an example use)

Gaussians
    Single variable
    Multivariate - with full covariance matrix or diagonal only

Mixture Of Gaussians
    Learn density function of a mixture of gaussians from data
    EM algorithm to converge model with data

You can find AIToolbox on Github here.

A nice collection of AI helpers.


  •  
  •  
  •  
  •  
  •