安全、快速、简单的点对点文件传输解决方案 - 无需注册,即传即用
- 📁 文件传输 - 支持多文件同时传输
- 📝 文字传输 - 快速分享文本内容
- 🖥️ 桌面共享 - 实时屏幕共享
- 🔗 连接状态同步 - 实时连接状态UI同步
- 🔒 端到端加密 - 数据传输安全,服务器不存储文件
- 📱 响应式设计 - 完美适配手机、平板、电脑
- 🖥️ 多平台支持 - 支持linux/macos/win 单文件部署
- ✅ WEBRTC链接恢复 - 关闭页面后在打开,进行数据链接恢复
- ✅ 定义TURN配置 - 支持自定义中继TURN配置
- ✅ 优化移动端提示 - 优化各种场景的错误提示
- ✅ 帮助文档 - 常见问题说明文档更新
- ✅ 移动端桌面全屏 - 优化移动端下UI,并解决全屏问题
- ✅ 完善Docker部署支持 - 优化Docker配置,支持一键部署和多环境配置
- ✅ 优化README文档 - 更新项目说明,完善部署指南和技术栈信息
- ✅ 改进UI用户体验 - 优化界面细节,完善错误提示和加载状态
- ✅ 重构Hooks架构 - 拆分复杂hooks,提高代码复用性和可维护性
- ✅ 文件传输 ACK 确认支持 - 实现了可靠的数据传输机制,每个数据块都需要接收方确认
- ✅ 修复组件渲染后重复注册/解绑 bug - 解决了 React 组件重复渲染导致的处理器反复注册问题
- ✅ 修复进度显示 Infinity% 问题 - 解决了除零错误和进度闪烁问题
- ✅ 分离UI组件,统一UI状态 - 重构UI架构,提高代码复用性和可维护性
- ✅ 共享底层链接 - 优化WebRTC连接管理,支持多个业务模块共享连接
- ✅ 远程桌面支持 - 新增实时屏幕共享功能
- ✅ 修复 WebRTC 连接状态异常 - 增强了连接状态错误处理和恢复能力
- Next.js 15 - React全栈框架,支持SSR/SSG
- React 18 - 现代化UI组件库
- TypeScript 5 - 类型安全的JavaScript超集
- Tailwind CSS 3.4 - 实用优先的CSS框架
- Radix UI - 无障碍访问的组件库
- Zustand - 轻量级状态管理
- Lucide React - 现代化图标库
- Go 1.22 - 高性能编程语言
- WebSocket - 实时双向通信
- 内存存储 - 轻量级数据存储
- 标准库 - 原生HTTP服务器
- WebRTC DataChannel - 端到端数据传输
- P2P直连 - 点对点连接,无需中转
- ICE框架 - 网络连接协商
- STUN/TURN - NAT穿透支持
- 微服务架构 - 前后端分离
- 实时通信 - WebSocket + WebRTC
- 响应式设计 - 移动端适配
- 容器化 - Docker部署支持
# 使用 Docker Compose(最简单)
git clone https://github.com/MatrixSeven/file-transfer-go.git
cd file-transfer-go
docker-compose up -d
# 或者直接使用 Docker 镜像
docker run -d -p 8080:8080 --name file-transfer-go matrixseven/file-transfer-go:latest
git clone https://github.com/MatrixSeven/file-transfer-go.git
cd file-transfer-go
./build-fullstack.sh
./dist/file-transfer-go
访问 http://localhost:8080 开始使用
# 后端服务
make dev
# 前端服务(新终端)
cd chuan-next && yarn && yarn dev
NODE_ENV
: 运行环境(development/production)PORT
: 服务端口(默认8080)GO_BACKEND_URL
: 后端服务地址
# docker-compose.yml 可配置项
environment:
- NODE_ENV=production
- PORT=8080
ports:
- "8080:8080"
restart: unless-stopped
项目支持多架构Docker镜像:
linux/amd64
- x86_64 架构linux/arm64
- ARM 64位架构
latest
- 最新稳定版本v1.0.x
- 特定版本号dev
- 开发版本
- 选择文件 → 生成取件码 → 分享6位码
- 输入文字内容 → 生成取件码 → 分享给对方
- 点击共享桌面 → 生成取件码 → 对方输入码观看
发送方 ←─── WebSocket信令 ───→ 服务器 ←─── WebSocket信令 ───→ 接收方
│ │
└────────────── WebRTC P2P直连传输 ──────────────────────────┘
# 后端
make dev
# 前端
cd chuan-next && yarn && yarn dev
MIT License