LayerKit alternatives and similar libraries
Based on the "Messaging" category.
Alternatively, view LayerKit alternatives based on common mentions on social networks and blogs.
-
SlackTextViewController
DISCONTINUED. A drop-in UIViewController subclass with a growing text input view and other useful messaging features. -
NMessenger
DISCONTINUED. A fast, lightweight messenger component built on AsyncDisplaykit and written in Swift -
ExyteChat
A SwiftUI Chat UI framework with fully customizable message cells and a built-in media picker -
Messenger Chat with Firebase
Messenger Clone - Real-time iOS Chat with Firebase Firestore written in Swift -
ChatLayout
ChatLayout is an alternative solution to MessageKit. It uses custom UICollectionViewLayout to provide you full control over the presentation as well as all the tools available in UICollectionView. It supports dynamic cells and supplementary view sizes. -
OTTextChatAccelerator
DISCONTINUED. OpenTok Text Chat Accelerator Pack enables text messages between mobile or browser-based devices.
CodeRabbit: AI Code Reviews for Developers
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of LayerKit or a related project?
README
Layer iOS Releases
This repository contains binary distributions of iOS products released by Layer.
If you have any questions, comments, or issues related to any products distributed via this repository then please contact the team by emailing [email protected]. Questions about pricing or product roadmap can be directed to [email protected].
LayerKit
LayerKit is the iOS SDK for interacting with the Layer communications cloud. It provides a simple, object oriented interface to the rich messaging capabilities provided by the platform.
In order to use LayerKit you must be a registered developer with a provisioned application identifier and have configured a backend system to act as an identity provider for your client applications. All aspects of this setup are covered in detail in the Layer iOS Documentation.
Installation
LayerKit can be installed directly into your application by importing a framework or via CocoaPods. Quick installation instructions are provided below for reference, but please refer to the Layer iOS Documentation for full details and troubleshooting.
CocoaPods Installation
The recommended path for installation is CocoaPods. CocoaPods provides a simple, versioned dependency management system that automates the tedious and error prone aspects of manually configuring libraries and frameworks. You can add LayerKit to your project via CocoaPods by doing the following:
$ sudo gem install cocoapods
$ pod setup
Now create a Podfile
in the root of your project directory and add the following:
pod 'LayerKit'
Complete the installation by executing:
$ pod install
These instructions will setup your local CocoaPods environment and import LayerKit into your project. Once this has completed, test your installation by referring to the Verifying LayerKit Configuration section below.
Carthage Installation
LayerKit can also be installed to your project via Carthage. Carthage is a decentralized package manager that is designed to be as simple as possible. Carthage will not make any modifications to your project, so installation is moderately more involved than with CocoaPods. To get started, ensure that you have installed Carthage and then create a Cartfile
with the following content:
binary "https://raw.githubusercontent.com/layerhq/releases-ios/master/LayerKit.json"
and run the following command:
carthage update
This will put the LayerKit.framework
into the your_project_root/Carthage/Build/iOS/
directory, from where you can add it to your project and link it with your application target. Then select your application target within XCode and navigate to the Build Phases panel and click the +
icon and select New Run Script Phase. Set the content to:
/usr/local/bin/carthage copy-frameworks
In the Input Files section add:
$(SRCROOT)/Carthage/Build/iOS/LayerKit.framework
Now build your application target and everything should be set.
Framework Installation
If you wish to install LayerKit directly into your application via the binary framework, then you have a choice between two distributions:
LayerKit.framework
- This build artifact is a dynamic framework that is compatible with Objective-C and Swift projects that target iOS 8 and higher.LayerKit.embeddedframework
- This build artifact is a pseudo-framework that contains a static library asset and a set of public header files. It is compatible with Objective-C projects that target iOS 7 and higher.
Download the appropriate build artifact from this repository and add it to your application:
- Drag and drop the framework onto your project, instructing Xcode to copy items into your destination group's folder.
- Update your project settings to include the linker flags:
-ObjC -lz
- Add the following Cocoa SDK frameworks to your project:
'CFNetwork', 'Security', 'MobileCoreServices', 'SystemConfiguration', 'libsqlite3.tbd'
- LayerKit.framework only: The dynamic framework distribution requires the configuration of additional build phases to complete installation. The steps are detailed on the Layer Knowledge Base.
Build and run your project to verify installation was successful. Once you have completed a successful build, refer to the Verifying LayerKit Configuration section below for details on how to test your setup.
Verifying LayerKit Configuration
Once you have finished installing LayerKit via CocoaPods or framework, you can test your configuration by importing the headers and connecting a client to the Layer cloud. To do so, edit your application delegate to include the code below (note that you must substitute the app ID placeholder text with your actual app identifier):
#import <LayerKit/LayerKit.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSURL *appID = [NSURL URLWithString:@"INSERT-APPID-URL-HERE"];
LYRClient *layerClient = [LYRClient clientWithAppID:appID];
[layerClient connectWithCompletion:^(BOOL success, NSError *error) {
if (success) {
NSLog(@"Sucessfully connected to Layer!");
} else {
NSLog(@"Failed connection to Layer with error: %@", error);
}
}];
}
Launch your application and verify that the connection is successful. You are now ready to begin authenticating clients and sending messages. Please refer to the Layer iOS Documentation for details.
Contact
You can reach the Layer team at any time by emailing [email protected].
License
LayerKit is licensed under the Layer SDK License.
*Note that all licence references and agreements mentioned in the LayerKit README section above
are relevant to that project's source code only.