Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 

Repository files navigation

ABD 即时通讯系统

ABD 是一个即时通讯示例项目,包含:

  • backend/:Go 实现的 IM 后端(HTTP API + WebSocket)
  • frontend/web/:React + Vite 实现的前端页面

目录结构

.
├── backend/        # 后端服务与压测脚本
└── frontend/web/   # 前端应用

后端能力(backend)

  • 用户注册、登录与基础资料接口
  • 好友与群组相关接口
  • 消息发送与会话拉取接口
  • WebSocket 长连接
  • Prometheus 指标暴露

主要技术栈:Go、Gin、Gorilla WebSocket、MySQL、Redis、Kafka、GORM。

快速开始

1) 启动后端

cd backend
make run

默认配置文件:/home/runner/work/abd/abd/backend/config/config.yaml

2) 启动前端

cd frontend/web
npm install
npm run dev

3) Docker(后端)

cd backend/deployments/build
docker-compose up -d
docker-compose logs -f backend

测试与校验

# 后端
cd backend
go test ./...

# 前端
cd frontend/web
npm run lint
npm run build

说明:仓库中部分后端测试依赖外部 Redis/Kafka 环境。


English

ABD is an instant messaging demo project with:

  • backend/: Go-based IM backend (HTTP API + WebSocket)
  • frontend/web/: React + Vite web client

Project layout

.
├── backend/        # backend service and stress test scripts
└── frontend/web/   # frontend application

Backend capabilities

  • User registration, login, and profile APIs
  • Friend and group APIs
  • Message sending and conversation pulling APIs
  • WebSocket long-lived connections
  • Prometheus metrics endpoint

Main stack: Go, Gin, Gorilla WebSocket, MySQL, Redis, Kafka, and GORM.

Quick start

# Backend
cd backend
make run

# Frontend
cd frontend/web
npm install
npm run dev

Validation

# Backend
cd backend
go test ./...

# Frontend
cd frontend/web
npm run lint
npm run build

Note: some backend tests require external Redis/Kafka services.

About

No description, website, or topics provided.

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages