Chatto alternatives and similar libraries
Based on the "Messaging" category.
Alternatively, view Chatto 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. -
LayerKit
DISCONTINUED. iOS SDK for Layer, the easiest way to add in-app messaging (text, photos, videos, data) to any mobile or web application. -
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 Chatto or a related project?
README
Chatto

Chatto
is a Swift lightweight framework to build chat applications. It's been designed to be extensible and performant. Along with Chatto
there is ChattoAdditions
, a companion framework which includes cells for messages and an extensible input component. You can find more details about how it was implemented in our blog. See them in action!
Features
- Calculation of collection view changes and layout in background
- Supports pagination in both directions and autoloading
- Message count contention for fast pagination and rotation with thousands of messsages
- Accessory view revealing by swiping from right
- Interactive keyboard dismissal
- Text bubbles
- Photo bubbles
- Extensible input bar
How to use
Check the wiki!
How to contribute
If you just have a question, please reach us in our gitter room
If you'd like to file a bug report, suggest changes or submit a pull request, please [check our contribution guide](.github/CONTRIBUTING.md)
How to install
CocoaPods
Make sure
use_frameworks!
is added to yourPodfile
.Include the following in your
Podfile
:# Swift 5 pod 'Chatto', '= 4.1.0' pod 'ChattoAdditions', '= 4.1.0' # if you want to use the cells or the input component
# Swift 4.2 pod 'Chatto', '= 3.4.0' pod 'ChattoAdditions', '= 3.4.0' # if you want to use the cells or the input component
# Swift 4 pod 'Chatto', '= 3.3.1' pod 'ChattoAdditions', '= 3.3.1' # if you want to use the cells or the input component
# Swift 3 pod 'Chatto', '= 3.2.0' pod 'ChattoAdditions', '= 3.2.0' # if you want to use the cells or the input component
# Swift 2.x pod 'Chatto', '= 2.1.0' pod 'ChattoAdditions', '= 2.1.0' # if you want to use the cells or the input component
If you like living on the bleeding edge, you can use the
master
branch with:pod 'Chatto', :git => 'https://github.com/badoo/Chatto', :branch => 'master' pod 'ChattoAdditions', :git => 'https://github.com/badoo/Chatto', :branch => 'master'
Run
pod install
Carthage
If you’re using Carthage, simply add Chatto to your Cartfile:
# Swift 5
github "badoo/Chatto"
# Swift 2.x
github "badoo/Chatto" "swift-2"
Manually
- Clone, add as a submodule or download.
- Drag and drop
Chatto
and/orChattoAdditions
project to your workspace - Add
Chatto
and/orChattoAdditions
to Embedded binaries
License
Source code is distributed under MIT license.
Blog
Read more on our tech blog or explore our other open source projects
*Note that all licence references and agreements mentioned in the Chatto README section above
are relevant to that project's source code only.