Announcing ChatBird — A Swift library making it easy to create messaging apps using SendBird and Chatto.

David Rajan
Velos Mobile
Published in
3 min readApr 2, 2020

Are you trying to create an iOS chat app but finding it a chore to to connect the messaging service to your UI?

ChatBird is a Swift framework that bridges the SendBird SDK with the Chatto framework. SendBird is an in-app messaging platform but doesn't provide any built-in UI, and Chatto is one such library that provides a UI to build chat applications. However, this integration requires some work to accomplish, which is where ChatBird comes to the rescue!

ChatBird screenshot
ChatBird in action

So how does ChatBird work?

To get an idea about how ChatBird works, let’s first briefly go over SendBird and Chatto, the two libraries that ChatBird bridges together:

  • SendBird — provides a white label messaging platform with APIs that can be accessed using their SDK and the infrastructure for users on your app to send private or public text/file messages to each other.
  • Chatto — provides a framework to build a chat UI (displaying user input, message bubbles, timestamps, etc).

To connect the data sent/received in SendBird and display it in your iOS app you have to either manually create a lot of UI elements and lay them all out or use a framework like Chatto. But even Chatto requires a lot of manual setup to create data sources, presenters, decorators, and other pieces to make the integration work. So how do we make this easy?

Enter ChatBird. When building chat apps for clients we realized that we were writing the same type of code to bridge the messaging APIs to the UI for each app, reinventing the wheel each time. So we decided to break out this code into a reusable framework — ChatBird.

ChatBird provides an implementation of the UI provided by Chatto connected to SendBird, choosing sensible defaults you can use as a starting point for your own app. Just provide your SendBird app id, instantiate the ChatViewController with a SBDGroupChannel (currently only SendBird Group Channels are supported, but Open Channels may be supported in the future) — and watch your chat come to life!

Sounds good, but where do I get it?

ChatBird is supported in iOS 12+ and Swift 5 projects and is available as a CocoaPod. Simply add the following line into your Podfile to get started:

pod 'ChatBird'

You can find additional setup instructions and examples in the README. Happy chatting!

Velos Mobile is a Mobile Design & Development Agency in San Francisco. Drop us a note if you would like to chat about anything mobile! info@velosmobile.com

--

--