Go to file
Grigory 8d06ed86cd Merge branch 'master' into BatchUpdates_at_pagination 2016-11-21 13:40:37 +03:00
Chatto Merge branch 'master' into BatchUpdates_at_pagination 2016-11-21 13:40:37 +03:00
Chatto.xcworkspace Compatibility for Xcode 8 beta 2016-08-08 13:00:58 +01:00
ChattoAdditions Swiflint 0.13 fixes & Xcode 8 b2 compatibility (#253) 2016-11-18 22:12:40 +00:00
ChattoApp Fix code coverage (#254) 2016-11-19 01:31:09 +00:00
readme-images Chatto inception 2015-11-26 22:48:25 +00:00
.codecov.yml Fix code coverage (#254) 2016-11-19 01:31:09 +00:00
.gitignore Initial commit 2015-11-25 16:30:26 +00:00
.swift-version Updates Podfile to use Swift 3.0.1. Runs pod update 2016-11-14 16:05:41 +00:00
.swiftlint.yml Swiflint 0.13 fixes & Xcode 8 b2 compatibility (#253) 2016-11-18 22:12:40 +00:00
.travis.yml Fix code coverage (#254) 2016-11-19 01:31:09 +00:00
AUTHORS Add Igor Kashkuta to AUTHORS (#128) 2016-05-09 16:37:18 +01:00
CHANGELOG.md Fix in Changelog 2016-11-14 18:02:37 +00:00
Chatto.podspec Bumps version to 3.0.1 2016-11-14 16:05:41 +00:00
ChattoAdditions.podspec Bumps version to 3.0.1 2016-11-14 16:05:41 +00:00
LICENSE Initial commit 2015-11-25 16:30:26 +00:00
README.md Bumps version to 3.0.1 2016-11-14 16:05:41 +00:00

README.md

Chatto Build Status codecov.io CocoaPods Compatible Carthage compatible

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 install

CocoaPods

  1. Make sure use_frameworks! is added to your Podfile.

  2. Include the following in your Podfile:

# Swift 3
pod 'Chatto', '= 3.0.1'
pod 'ChattoAdditions', '= 3.0.1' # 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'
  1. Run pod install

Carthage

If youre using Carthage, simply add Chatto to your Cartfile:

# Swift 3
github "badoo/Chatto"
# Swift 2.x
github "badoo/Chatto" "swift-2"

Manually

  1. Clone, add as a submodule or download.
  2. Drag and drop Chatto and/or ChattoAdditions project to your workspace
  3. Add Chatto and/or ChattoAdditions to Embedded binaries

License

Source code is distributed under MIT license.

Android

Check our colleagues' project Chateau!

##Blog Read more on our tech blog or explore our other open source projects