littlebot
Published on 2025-04-10 / 0 Visits
0

【源码】基于Golang和Vue3的即时通讯系统

项目简介

GIM 是一个网页版即时聊天系统,界面简约美观、操作简单,便于进行二次开发。此系统专注于开发人员的技术交流,摒弃了微信、QQ 等大众化功能,着重于交流学习。

项目的主要特性和功能

后端技术栈

  • Golang 1.21+
  • MySQL 5.7+
  • Redis 5.0+
  • Minio
  • Nsq

前端技术栈

  • Vue3
  • Naive UI
  • Ts

功能特性

  • 支持基本的注册登录与常见的增删改查操作。
  • 采用 WebSocket 进行通信。
  • 支持私聊、群聊和房间聊天场景。
  • 具备服务水平扩展能力。
  • 聊天消息类型丰富,有文本、代码块、图片及其他类型文件。
  • 支持聊天消息的撤回、删除、批量删除、转发(逐条转发、合并转发)及群投票功能。
  • 支持编写个人笔记。
  • 支持绑定远程代码仓库。
  • 支持容器化部署和 k8s 容器编排。

安装使用步骤

配置参数

拷贝项目根目录下 config.example.yaml 文件为 config.yaml 并正确配置相关参数 bash $ cp config.example.yaml config.yaml # 请务必正确配置相关参数

安装依赖包

bash $ go mod tidy

安装相关依赖命令行工具

bash $ make install

初始化数据库

bash $ go run ./cmd/gim migrate

开发环境下启动服务

打开两个终端,分别运行下面两个命令 bash $ go run ./cmd/gim http # 本地启动 http 服务 $ go run ./cmd/gim commet # 本地启动 websocket 服务

编译后运行

bash $ make build # 执行编译命令

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】