Authorization with social networks
Clone or download
Latest commit 46efd6e Aug 7, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
Core Add Swift 4 support Feb 27, 2018
Example/AuthorizeMeDemo Version up Apr 19, 2018
Providers Mark system providers deprecated for iOS 11 Mar 5, 2018
AuthorizeMe.podspec Version up Apr 19, 2018
LICENSE Initial commit May 24, 2017


AuthorizeMe is a mobile library for iOS that designed to easy implementation of authorization with social networks. This repository holds the source code that contain a set of providers that implement the functionality needed to get credentials and information about user from various social services.


  • No dependency: AuthorizeMe is a fully Swift framework without any dependency. Use the library without any additional Xcode project configurations after installation.
  • Authorization: There are two ways to authorize user. Use SystemProvider for authorize user with iOS social accounts data. Use WebProvider for authorize user with UIWebView in case when is not possible to use first way.
  • Custom provider: Implement own provider if AuthorizeMe does not following social network that needed. It is easy and free.

Getting Started


CocoaPods is a dependency manager for Cocoa projects. Install it with the following command:

$ gem install cocoapods

To integrate AuthorizeMe into Xcode project using CocoaPods, specify it in Podfile:

platform :ios, '10.0'

target 'Target Name' do

    pod 'AuthorizeMe'
    # or 
    # pod 'AuthorizeMe/Facebook'
    # to integrate Facebook only


Then, run the following command:

$ pod install

First Look

Firstly, import AuthorizeMe framework into class in Xcode project.

import AuthorizeMe

Then, turn logging on for seen error messages of authorization process if needed. Do it in AppDelegate class is the best way.

DebugService.isNeedOutput = true

Finally, use Authorize manager that authorize user with SystemProvider if it possible, but in other case manager authorize user with WebProvider."Name of social network") { session, error in
    // Do something

To separate usage of various providers, use SystemProvider and WebProvider apart.

let provider = FacebookSystemProvider() 
// or 
// let provider = TwitterWebProvider()

provider.authorize { session, error in
    // Do something


AuthorizeMe library is licensed under the MIT license. See the LICENSE file for more info.

RubyGarage Logo

RubyGarage is a leading software development and consulting company in Eastern Europe. Our main expertise includes Ruby and Ruby on Rails, but we successfully employ other technologies to deliver the best results to our clients. Check out our portfolio for even more exciting works!