Files
FunConnect/README.md
FunMC 4f8d6211bb refactor: 客户端和服务端分离为独立项目
- server/: 中继服务端 + Web管理面板 + 部署脚本(独立项目)
- client/: Electron桌面客户端(独立项目)
- web/ 和 deploy/ 移入 server/ 目录
- 各项目独立 README.md 和 .gitignore
- 顶层 README 作为项目总览
2026-02-23 07:51:34 +08:00

73 lines
2.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# FunConnect - Minecraft 联机平台
一个支持多节点中继的 Minecraft 联机平台让玩家无需公网IP即可轻松联机。
本仓库包含 **两个独立项目**,可分别独立开发、部署和运行。
## 项目结构
```
FunConnect/
├── server/ # 服务端(中继服务器 + Web 管理面板 + 部署脚本)
└── client/ # 客户端Electron 桌面应用)
```
## 服务端 (`server/`)
中继服务器 + Web 管理面板,部署在 Ubuntu 服务器上。
- **TCP 中继引擎** - 转发 Minecraft 流量,支持 Java 版和基岩版
- **多节点集群** - 主节点 + 工作节点架构,水平扩展
- **房间系统** - 创建/加入/密码保护/过期清理
- **流量监控** - 实时统计各房间流量
- **Token 认证** - 保护写操作 API
- **Web 管理面板** - React + TailwindCSS 可视化管理
- **一键部署** - Ubuntu 自动安装脚本 + systemd 服务
```bash
cd server
npm install
cp .env.example .env
npm run dev
```
详细文档见 [server/README.md](server/README.md)
## 客户端 (`client/`)
Electron 跨平台桌面客户端,支持 Windows / macOS / Linux。
- **连接服务器** - 输入中继地址一键连接
- **房间管理** - 浏览/创建/加入联机房间
- **本地代理** - 自动建立本地代理MC 添加 `127.0.0.1:25566` 即可联机
- **设置持久化** - 记住服务器地址、玩家名等偏好
- **系统托盘** - 最小化到托盘后台运行
```bash
cd client
npm install
npm run dev
```
详细文档见 [client/README.md](client/README.md)
## 架构
```
┌───────────────┐ ┌──────────────────────────┐
│ FunConnect │ TCP │ 中继服务器 (Ubuntu) │
│ 桌面客户端 │◄─────►│ server/ 项目独立部署 │
│ client/ │ │ ┌─────────┐ ┌──────────┐ │
└───────────────┘ │ │ TCP中继 │ │ REST API │ │
│ └─────────┘ └──────────┘ │
┌───────────────┐ │ ┌──────────────────────┐ │
│ Minecraft │ TCP │ │ Web 管理面板 │ │
│ 游戏客户端 │◄─────►│ │ (React + Vite) │ │
└───────────────┘ │ └──────────────────────┘ │
└──────────────────────────┘
```
## License
MIT