Chat SDK is a fully featured open source instant messaging framework for Android. Chat SDK is fully featured, scalable and flexible and follows the following key principles:
- Free. Chat SDK uses the Apache 2.0 license
- Open Source. Chat SDK is open source
- Full control of the data. You have full and exclusive access to the user's chat data
- Quick integration. Chat SDK is fully featured out of the box
- Scalable. Supports millons of daily users [1, 2]
- Backend agnostic. Chat SDK can be customized to support any backend
- Multiple Backends Support Firestore, Firebase, ejabberd, OpenFire, Prosody, Tigase, MongooseIM
- Persistence - GreenDao
- Reactive - RXAndroid
- Java 8 supports Java 8 and lamda expressions
- Multi-threaded agressively multi-threaded
- API Level 16+ Compatible with 99.3% of Android devices
- Demo Download v5.0.1
Please bear in mind that this version is a major update. As a result we are making new releases every few days to fix bugs and crashes. If you see an issue, please report it on the Github bug tracker and we will fix it.
- Powered by Firebase Firestore, Realtime database or XMPP
- Private and group messages ⇘GIF
- Public chat rooms
- Username / password, Facebook, Twitter, Anonymous and custom login
- Phone number authentication
- Push notifications (using FCM)
- Text, Image ⇘GIF and Location ⇘GIF messages
- Forward, Reply ⇘GIF, Copy and Delete ⇘GIF messages
- Tabbar ⇘GIF or Drawer ⇘GIF layout
- User Profiles ⇘GIF
- User Search ⇘GIF
- Contacts ⇘GIF
- Add contact by QR code ⇘GIF
- Firebase UI ⇘GIF
- iOS Version
- Web Version
Sponsor us on either Github sponsors or Paetron and get these features. For full details visit our Modules page.
When you support us on Patreon, you get: extra modules, code updates, support as well as special access to the Discord Server.
- Typing indicator ⇘GIF
- Read receipts
- Last online indicator
- Audio messages ⇘GIF
- Video messages ⇘GIF
- Sticker messages ⇘GIF
- User blocking ⇘GIF
- File Messages ⇘GIF
- End-to-end encryption
- Nearby Users
- Contact book integration ⇘GIF
- Location based chat ⇘GIF
- XMPP Server Support
- ejabberd
- Prosody
- OpenFire
- Tigase
- MongooseIM
Visit our Animated GIF Gallery to see all the features.
Learn about the history of Chat SDK and our future plans in this post.
People always ask about how much Chat SDK costs to run. And will it scale to millions of users? So I wrote an article talking about just that.
- Discord: If you need support, join our Server
- Support the project: Patreon or Github Sponsors 🙏 and get access to premium modules
- Upvote: our advert on StackOverflow
- Contribute by writing code: Email the Contributing Document to [email protected]
- Give us a star on Github ⭐
- Upvoting us: Product Hunt
- Tweet: about your Chat SDK project using @chat_sdk
- Live Stream Join us every Saturday 18:00 CEST for a live stream where I answer questions about Chat SDK. For more details please join the Discord Server
You can also help us by:
- Providing feedback and feature requests
- Reporting bugs
- Fixing bugs
- Writing documentation
Email us at: [email protected]
We also offer development services we are a team of full stack developers who are Firebase experts. For more information check out our consulting site.
If you are looking for something that is more-light weight than Chat SDK, we also have a library which only provides instant messaging functionality.
- 1-to-1 Messaging
- Group chat, roles, moderation
- Android, iOS, Web and Node.js
- Fully customisable messages
- Typing Indicator
- Delivery receipts
- User blocking
- Presence
- Message history (optional)
- Firestore or Realtime database
You can check out the project: Firestream on Github.
- Migration guide
- If you want to see the v4 docs, they are available on the v4 branch
- Full video tutorial
- Building a messaging app using Chat SDK
- Adding Chat SDK to a Firebase app
- Adding Chat SDK to a non-Firebase app
- Add the Chat SDK libraries to your project
- Configure Firebase
- Configure the Chat SDK
- Enable Location Messages
- Display the login screen
- Add additional module dependencies
- Enable and configure the modules
- Synchronize user profiles with your app
- Enable token authentication
- Override Activity or Fragment
- Theme Chat SDK
- Customize the Icons
- Customize the Tabs
- Add a Chat Option
- Custom Message Types
We provide extensive documentation on Github but if you’re a non-technical user or want to save yourself some work you can take advantage of our setup and integration service.