< p align = "center" >
< a href = "https://openim.io" >
< img src = "./assets/logo-gif/openim-logo.gif" width = "60%" height = "30%" / >
< / a >
< / p >
< div align = "center" >
[![Stars ](https://img.shields.io/github/stars/openimsdk/open-im-server?style=for-the-badge&logo=github&colorB=ff69b4 )](https://github.com/openimsdk/open-im-server/stargazers)
[![Forks ](https://img.shields.io/github/forks/openimsdk/open-im-server?style=for-the-badge&logo=github&colorB=blue )](https://github.com/openimsdk/open-im-server/network/members)
[![Codecov ](https://img.shields.io/codecov/c/github/openimsdk/open-im-server?style=for-the-badge&logo=codecov&colorB=orange )](https://app.codecov.io/gh/openimsdk/open-im-server)
[![Go Report Card ](https://goreportcard.com/badge/github.com/openimsdk/open-im-server?style=for-the-badge )](https://goreportcard.com/report/github.com/openimsdk/open-im-server)
[![Go Reference ](https://img.shields.io/badge/Go%20Reference-blue.svg?style=for-the-badge&logo=go&logoColor=white )](https://pkg.go.dev/github.com/openimsdk/open-im-server/v3)
[![License ](https://img.shields.io/badge/license-Apache--2.0-green?style=for-the-badge )](https://github.com/openimsdk/open-im-server/blob/main/LICENSE)
[![Slack ](https://img.shields.io/badge/Slack-500%2B-blueviolet?style=for-the-badge&logo=slack&logoColor=white )](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q)
[![Best Practices ](https://img.shields.io/badge/Best%20Practices-purple?style=for-the-badge )](https://www.bestpractices.dev/projects/8045)
[![Good First Issues ](https://img.shields.io/github/issues/openimsdk/open-im-server/good%20first%20issue?style=for-the-badge&logo=github )](https://github.com/openimsdk/open-im-server/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22good+first+issue%22)
[![Language ](https://img.shields.io/badge/Language-Go-blue.svg?style=for-the-badge&logo=go&logoColor=white )](https://golang.org/)
< p align = "center" >
< a href = "./README.md" > Englist< / a > ·
< a href = "./README_zh_CN.md" > 中文< / a > ·
< a href = "./docs/readme/README_uk.md" > Українська< / a > ·
< a href = "./docs/readme/README_cs.md" > Česky< / a > ·
< a href = "./docs/readme/README_hu.md" > Magyar< / a > ·
< a href = "./docs/readme/README_es.md" > Español< / a > ·
< a href = "./docs/readme/README_fa.md" > فارسی< / a > ·
< a href = "./docs/readme/README_fr.md" > Français< / a > ·
< a href = "./docs/readme/README_de.md" > Deutsch< / a > ·
< a href = "./docs/readme/README_pl.md" > Polski< / a > ·
< a href = "./docs/readme/README_id.md" > Indonesian< / a > ·
< a href = "./docs/readme/README_fi.md" > Suomi< / a > ·
< a href = "./docs/readme/README_ml.md" > മലയാളം< / a > ·
< a href = "./docs/readme/README_ja.md" > 日本語< / a > ·
< a href = "./docs/readme/README_nl.md" > Nederlands< / a > ·
< a href = "./docs/readme/README_it.md" > Italiano< / a > ·
< a href = "./docs/readme/README_ru.md" > Русский< / a > ·
< a href = "./docs/readme/README_pt_BR.md" > Português (Brasil)< / a > ·
< a href = "./docs/readme/README_eo.md" > Esperanto< / a > ·
< a href = "./docs/readme/README_ko.md" > 한국어< / a > ·
< a href = "./docs/readme/README_ar.md" > العربي< / a > ·
< a href = "./docs/readme/README_vi.md" > Tiếng Việt< / a > ·
< a href = "./docs/readme/README_da.md" > Dansk< / a > ·
< a href = "./docs/readme/README_el.md" > Ελληνικά< / a > ·
< a href = "./docs/readme/README_tr.md" > Türkçe< / a >
< / p >
< / div >
< / p >
## :busts_in_silhouette: 加入我们的社区
+ 💬 [关注我们的 Twitter ](https://twitter.com/founder_im63606 )
+ 🚀 [加入我们的 Slack ](https://join.slack.com/t/openimsdk/shared_invite/zt-22720d66b-o_FvKxMTGXtcnnnHiMqe9Q )
+ :eyes: [加入我们的微信群 ](https://openim-1253691595.cos.ap-nanjing.myqcloud.com/WechatIMG20.jpeg )
## Ⓜ️ 关于 OpenIM
与Telegram、Signal、Rocket.Chat等独立聊天应用不同, OpenIM提供了专为开发者设计的开源即时通讯解决方案, 而不是直接安装使用的独立聊天应用。OpenIM由OpenIM SDK和OpenIM Server两大部分组成, 为开发者提供了一整套集成即时通讯功能的工具和服务, 包括消息发送接收、用户管理和群组管理等。总体来说, OpenIM旨在为开发者提供必要的工具和框架, 帮助他们在自己的应用中实现高效的即时通讯解决方案。
![App-OpenIM 关系 ](./docs/images/oepnim-design.png )
## 🚀 OpenIMSDK 介绍
**OpenIMSDK** 是为 **OpenIMServer** 设计的IM SDK, 专为集成到客户端应用而生。它支持多种功能和模块:
+ 🌟 主要功能:
- 📦 本地存储
- 🔔 监听器回调
- 🛡️ API封装
- 🌐 连接管理
+ 📚 主要模块:
1. 🚀 初始化及登录
2. 👤 用户管理
3. 👫 好友管理
4. 🤖 群组功能
5. 💬 会话处理
它使用 Golang 构建,并支持跨平台部署,确保在所有平台上提供一致的接入体验。
👉 ** [探索 GO SDK ](https://github.com/openimsdk/openim-sdk-core )**
## 🌐 OpenIMServer 介绍
+ **OpenIMServer** 的特点包括:
- 🌐 微服务架构:支持集群模式,包括网关(gateway)和多个rpc服务。
- 🚀 多样的部署方式: 支持源代码、Kubernetes或Docker部署。
- 海量用户支持:支持十万级超大群组,千万级用户和百亿级消息。
### 增强的业务功能:
+ **REST API** : 为业务系统提供REST API, 增加群组创建、消息推送等后台接口功能。
+ **Webhooks** :通过事件前后的回调,向业务服务器发送请求,扩展更多的业务形态。
![整体架构 ](./docs/images/architecture-layers.png )
## :rocket: 快速入门
在线体验iOS/Android/H5/PC/Web:
👉 ** [OpenIM在线演示 ](https://www.openim.io/en/commercial )**
为了便于用户体验,我们提供了多种部署解决方案,您可以根据以下列表选择适合您的部署方式:
+ ** [源代码部署指南 ](https://docs.openim.io/guides/gettingStarted/imSourceCodeDeployment )**
+ ** [Docker 部署指南 ](https://docs.openim.io/guides/gettingStarted/dockerCompose )**
## 系统支持
支持 Linux、Windows、Mac 系统以及 ARM 和 AMD CPU 架构。
## :link: 相关链接
+ ** [开发手册 ](https://docs.openim.io/ )**
+ ** [更新日志 ](https://github.com/openimsdk/open-im-server/blob/main/CHANGELOG.md )**
## :writing_hand: 如何贡献
我们欢迎任何形式的贡献!在提交 Pull Request 之前,请确保阅读我们的[贡献者文档](https://github.com/openimsdk/open-im-server/blob/main/CONTRIBUTING.md)
+ ** [报告 Bug ](https://github.com/openimsdk/open-im-server/issues/new?assignees=&labels=bug&template=bug_report.md&title= )**
+ ** [提出新特性 ](https://github.com/openimsdk/open-im-server/issues/new?assignees=&labels=enhancement&template=feature_request.md&title= )**
+ ** [提交 Pull Request ](https://github.com/openimsdk/open-im-server/pulls )**
感谢您的贡献,一起来打造强大的即时通讯解决方案!
## :closed_book: 许可证
OpenIMSDK 在 Apache License 2.0 许可下可用。查看[LICENSE 文件](https://github.com/openimsdk/open-im-server/blob/main/LICENSE)了解更多信息。
## 🔮 Thanks to our contributors!
< a href = "https://github.com/openimsdk/open-im-server/graphs/contributors" >
< img src = "https://contrib.rocks/image?repo=openimsdk/open-im-server" / >
< / a >