分享
这是一个分享于 的资源,其中的信息可能已经有所发展或是发生改变。
# 🦫 Beaver:一个让你眼前一亮的开源IM系统
> 在数字化时代,即时通讯已经成为我们生活的一部分。今天,我要向大家介绍一个让人惊艳的开源IM项目 - Beaver。
## 🌟 项目亮点
Beaver 是一个基于 Go-zero 微服务框架构建的现代化IM解决方案。它不仅功能完整,而且易于扩展,是构建即时通讯应用的理想选择。
### 🚀 为什么选择Beaver?
* **完整的微服务架构**:15+个独立服务,让系统更加灵活
* **丰富的功能特性**:从基础聊天到朋友圈,应有尽有
* **高性能设计**:支持海量用户同时在线
## 📱 功能展示
### 1. 登录界面

简洁大方的登录界面,支持多种登录方式
### 2. 注册界面

简单三步,快速注册
### 3. 个人中心

个性化设置,一目了然
### 4. 好友管理

### 5. 消息中心

### 6. 聊天界面


支持单聊、群聊,表情、文件、图片一应俱全
### 7. 详情页面

丰富的个人信息展示
## 💡 技术特点
### 1. 微服务架构
服务端口
| 端口 | api | rpc | admin |
|:---------:|:--------:|:--------:|:--------:|
|user|21000|22000|23000|
|auth|21010|22010|23010|
|friend|21020|22020|23020|
|chat|21030|22030|23030|
|ws|21040|22040|23040|
|group|21050|22050|23050|
|file|21060|22060|23060|
|gateway|21080|-----|23080|
|moment|21090|-----|23090|
|feedback|21150|-----|23150|
### 2. 核心功能
* 实时消息推送
* 群组聊天
* 文件传输
* 朋友圈动态
* 表情包管理
* 系统通知
* 用户反馈
## 🛠️ 快速开始
### 环境要求
* Go 1.16+
* MySQL 5.7+
* Redis 6.0+
* etcd 3.4+
### 安装步骤
1. 安装依赖
```bash
go mod tidy
```
2. 初始化数据库
```bash
go run main.go -db
```
3. 启动服务
```bash
# 先启动RPC服务
# 再启动API服务
```
## 📈 项目进展
### 最新更新(2025年04月22日)
* 增加反馈功能
* 增加群聊功能
* 优化各种bug
* 头像服务优化
* go-zero版本升级
* 好友模块优化
* 最近会话列表优化
### 未来规划
1. 支持更多消息类型
2. 优化消息推送机制
3. 增强安全性
4. 支持更多平台
## 🌍 多端支持
Beaver 不仅支持移动端,还支持桌面端:
| \[GitHub仓库] | \[Gitee仓库] | 说明 |
| ---------------------------------------------------------- | ----------------------------------------------------------- | ---- |
| [beaver-server](https://github.com/wsrh8888/beaver-server) | [beaver-server](https://gitee.com/dawwdadfrf/beaver-server) | 后端服务 |
| [beaver-mobile](https://github.com/wsrh8888/beaver-mobile) | [beaver-mobile](https://gitee.com/dawwdadfrf/beaver-mobile) | 手机端 |
欢迎:
* ⭐ Star项目
* 📝 提交Issue
* 💻 贡献代码
* 📢 分享使用经验
## 🎉 结语
Beaver项目展示了如何构建一个现代化的IM系统。通过清晰的架构设计、丰富的功能实现,以及完善的性能优化,我们打造了一个稳定、高效、可扩展的IM解决方案。
无论你是想要学习微服务架构,还是需要一个可靠的IM解决方案,Beaver都值得你关注。项目持续更新中,期待你的参与!
***
> 如果你觉得这个项目不错,别忘了给个⭐哦!你的支持是我们持续改进的动力!
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信702 次点击
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传