Ohana is a framework for working with a user's contacts on the iOS platform. It provides a component-based architecture for loading and processing contacts, as well as managing state such as contact selection and tagging. Whether loading contacts to display to a user, or processing contact data programatically, Ohana provides a simple, but extensible, framework for contact access in your application. Check out the wiki to learn how the library works. There are two quickstart guides available: one for Swift and one for Objective-C. If you have any questions, feel free to ask on Stack Overflow (tag "ohana").
- Easy to get started
- Extensible architecture
- Runtime-injectable components
- Swift-compatible
To integrate Ohana into your project using CocoaPods, add the following line to your Podfile:
pod 'Ohana', '~> 1.3'
To consume Ohana using Carthage add this to your Cartfile:
github "uber/ohana-ios" ~> 1.3
You'll need to manually import Ohana, and its dependencies, libPhoneNumber and UberSignals.
- Clone the repo
git clone git@github.com:uber/ohana-ios.git
- Open the Example directory
cd ohana-ios/Example
- run
pod install
open Ohana.xcworkspace
- Run the
OhanaExample
scheme in Xcode
- Nick Entin (@NickEntin)
- Maxwell Elliott (maxwelle@uber.com, @maxwellE)
- Doug Togno (dtogno@uber.com, @Darj)
- Adam Zethraeus (adamz@uber.com, @zethraeus)
We'd love for you to contribute to our open source projects. Before we can accept your contributions, we kindly ask you to sign our Uber Contributor License Agreement.
- If you find a bug, open an issue or submit a fix via a pull request.
- If you have a feature request, open an issue or submit an implementation via a pull request
- If you want to contribute, submit a pull request.
Check out the Contribution Guidelines for more information.
Ohana is released under the MIT license. See the LICENSE file for more info.