OpenIM
An open-source instant messaging SDK and server for developers who want to build chat, user management and group messaging into their own apps.
- GitHub stars
- 17k
- Last commit
- 16 days ago
- Latest release
- v3.8.3-patch.16
- Licence
- Apache-2.0
- Self-hosted
- Yes

OpenIM is an open-source instant messaging solution aimed at developers rather than end users. The project contrasts itself with standalone chat apps such as Telegram, Signal and Rocket.Chat, saying it is a set of building blocks for adding messaging to your own application instead of an installable chat product.
It consists of the OpenIM SDK, a client-side library, and the OpenIM Server, written in Go. Together they handle sending and receiving messages, managing users and managing groups, so teams can embed chat into social, marketplace, enterprise or other apps without building the infrastructure themselves. The README is translated into many languages and links to community channels on Twitter, Slack and WeChat, and topics mention IM, chat and messaging.
OpenIM is Apache-2.0 licensed and runs on your own servers. It suits product teams and agencies who need to own their messaging stack, for example for data-residency or customization reasons, and who are comfortable operating a Go back end.
Key features
- Instant messaging server in Go
- Client SDK for embedding chat
- Message sending and receiving
- User account management
- Group chat management
- Deploy on your own servers
Pricing: Free and open source under the Apache-2.0 license.




