盒子IM —— 一個仿微信實現的網頁版聊天軟體,支持私聊、群聊、離線消息、發送語音、圖片、文件、emoji 表情等功能,不依賴任何第三方收費組件。 ...
大家好,我是 Java陳序員
。
問君能有幾多愁,開源項目解千愁!
今天,給大家介紹一個開源的仿微信聊天工具,同時支持 PC 端、移動端!
關註微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典電腦電子書籍等。
項目介紹
盒子IM —— 一個仿微信實現的網頁版聊天軟體,支持私聊、群聊、離線消息、發送語音、圖片、文件、emoji 表情等功能,不依賴任何第三方收費組件。
功能特色:
- 支持私聊、群聊、離線消息、發送語音、圖片、文件、emoji 表情等功能
- 聊天視窗支持已讀未讀顯示,群聊支持@功能
- 支持音視頻通話(基於 Webrtc 實現,需要 SSL 證書)
- 支持移動端和 Web 端同時線上,多端消息同步
技術棧:
- 後端:SpringBoot + Netty
- Web 端:Vue
- 移動端:Uniapp
消息推送方案:
項目截圖
PC 端
好友列表
私聊
群聊列表
群聊
個人信息設置
移動端
關註微信公眾號:【Java陳序員】,後臺回覆「高仿微信」,獲取項目地址和線上體驗地址!
項目運行
前期準備
1、運行環境
- JDK:1.8
- Maven:3.6.3
- MySQL:5.7
- Redis:5.0
- Minio
- Node:v14.16.0
2、拉取代碼
git clone https://gitee.com/bluexsx/box-im.git
3、代碼目錄結構
模塊 | 功能 |
---|---|
im-platform | 與頁面進行交互,處理業務請求 |
im-server | 推送聊天消息 |
im-client | 消息推送sdk |
im-common | 公共包 |
im-ui | web頁面 |
im-uniapp | app頁面 |
後端服務
1、將整個項目以 Maven 的形式導入到 IDEA 中
2、創建資料庫
CREATE DATABASE 'box-im' DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
3、執行 im-platfrom/resources/db
下的 db.sql
文件
4、修改 im-platform
模塊的配置文件 application.yml
中的資料庫、Redis、Minio 對應的連接地址信息
5、修改 im-server
模塊的配置文件 application.yml
中的 Redis 對應的連接地址信息
6、分別執行主啟動類 com.bx.implatform.IMPlatformApp
、com.bx.imserver.IMServerApp
啟動服務
Web 前端
1、進入到 im-ui
目錄
cd im-ui
2、安裝依賴
npm install
3、啟動服務
npm run dev
4、瀏覽器訪問
http://localhost:8080
移動端
1、將 im-uniapp
目錄導入到 HBuilderX
2、安裝依賴
npm install
3、點擊 HBuilderX 頂部菜單欄中的運行
4、訪問
http://localhost:5173
最後
推薦的開源項目已經收錄到 GitHub
項目,歡迎 Star
:
https://github.com/chenyl8848/great-open-source-project
或者訪問網站,進行線上瀏覽:
https://chencoding.top:8090/#/
大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!