Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 27 additions & 27 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@

**安全、快速、简单的点对点文件传输解决方案 - 无需注册,即传即用**

## [在线体验](https://transfer.52python.cn) • [GitHub](https://github.com/MatrixSeven/file-transfer-go) • [X关注我](https://x.com/_MatrixSeven)
## [在线体验](https://transfer.52python.cn) • [GitHub](https://github.com/MatrixSeven/file-transfer-go) • [X 关注我](https://x.com/_MatrixSeven)

![项目演示](img.png)



## ✨ 核心功能[端到端数据传输完全基于WebRTC的P2P直连]
## ✨ 核心功能 [端到端数据传输完全基于 WebRTC 的 P2P 直连]
<div align="center">

![React](https://img.shields.io/badge/React-18-blue.svg)
Expand All @@ -24,40 +24,40 @@
- 📁 **文件传输** - 支持多文件同时传输
- 📝 **文字传输** - 快速分享文本内容
- 🖥️ **桌面共享** - 实时屏幕共享
- 🔗 **连接状态同步** - 实时连接状态UI同步
- 🔗 **连接状态同步** - 实时连接状态 UI 同步
- 🔒 **端到端加密** - 数据传输安全,服务器不存储文件
- 📱 **响应式设计** - 完美适配手机、平板、电脑
- 🖥️ **多平台支持** - 支持linux/macos/win 单文件部署
- 🖥️ **多平台支持** - 支持 Linux / macOS / Windows 单文件部署

## 🔄 最近更新日志

### 2025-09--1
- ✅ **移动端桌面全屏** - 优化移动端下UI,并解决全屏问题
- ✅ **移动端桌面全屏** - 优化移动端下 UI,并解决全屏问题

### 2025-08-28
- ✅ **完善Docker部署支持** - 优化Docker配置,支持一键部署和多环境配置
- ✅ **优化README文档** - 更新项目说明,完善部署指南和技术栈信息
- ✅ **改进UI用户体验** - 优化界面细节,完善错误提示和加载状态
- ✅ **重构Hooks架构** - 拆分复杂hooks,提高代码复用性和可维护性
- ✅ **完善 Docker 部署支持** - 优化 Docker 配置,支持一键部署和多环境配置
- ✅ **优化 README 文档** - 更新项目说明,完善部署指南和技术栈信息
- ✅ **改进 UI 用户体验** - 优化界面细节,完善错误提示和加载状态
- ✅ **重构 Hooks 架构** - 拆分复杂 hooks,提高代码复用性和可维护性

### 2025-08-24
- ✅ **文件传输 ACK 确认支持** - 实现了可靠的数据传输机制,每个数据块都需要接收方确认
- ✅ **修复组件渲染后重复注册/解绑 bug** - 解决了 React 组件重复渲染导致的处理器反复注册问题
- ✅ **修复组件渲染后重复注册/解绑 BUG** - 解决了 React 组件重复渲染导致的处理器反复注册问题
- ✅ **修复进度显示 Infinity% 问题** - 解决了除零错误和进度闪烁问题

### 2025-08-14
- ✅ **分离UI组件,统一UI状态** - 重构UI架构,提高代码复用性和可维护性
- ✅ **共享底层链接** - 优化WebRTC连接管理,支持多个业务模块共享连接
- ✅ **分离 UI 组件,统一 UI 状态** - 重构 UI 架构,提高代码复用性和可维护性
- ✅ **共享底层链接** - 优化 WebRTC 连接管理,支持多个业务模块共享连接
- ✅ **远程桌面支持** - 新增实时屏幕共享功能
- ✅ **修复 WebRTC 连接状态异常** - 增强了连接状态错误处理和恢复能力

## 🚀 技术栈

### 前端技术栈
- **Next.js 15** - React全栈框架,支持SSR/SSG
- **React 18** - 现代化UI组件库
- **TypeScript 5** - 类型安全的JavaScript超集
- **Tailwind CSS 3.4** - 实用优先的CSS框架
- **Next.js 15** - React 全栈框架,支持 SSR/SSG
- **React 18** - 现代化 UI 组件库
- **TypeScript 5** - 类型安全的 JavaScript 超集
- **Tailwind CSS 3.4** - 实用优先的 CSS 框架
- **Radix UI** - 无障碍访问的组件库
- **Zustand** - 轻量级状态管理
- **Lucide React** - 现代化图标库
Expand All @@ -66,20 +66,20 @@
- **Go 1.22** - 高性能编程语言
- **WebSocket** - 实时双向通信
- **内存存储** - 轻量级数据存储
- **标准库** - 原生HTTP服务器
- **标准库** - 原生 HTTP 服务器

### 传输协议
- **WebRTC DataChannel** - 端到端数据传输
- **P2P直连** - 点对点连接,无需中转
- **ICE框架** - 网络连接协商
- **STUN/TURN** - NAT穿透支持
- **P2P 直连** - 点对点连接,无需中转
- **ICE 框架** - 网络连接协商
- **STUN/TURN** - NAT 穿透支持


### 架构特点
- **微服务架构** - 前后端分离
- **实时通信** - WebSocket + WebRTC
- **响应式设计** - 移动端适配
- **容器化** - Docker部署支持
- **容器化** - Docker 部署支持

## 📦 快速部署

Expand All @@ -104,7 +104,7 @@ cd file-transfer-go
./dist/file-transfer-go
```

访问 http://localhost:8080 开始使用
访问 `http://localhost:8080` 开始使用

### 方式三:开发环境部署

Expand All @@ -120,7 +120,7 @@ cd chuan-next && yarn && yarn dev

#### 环境变量配置
- `NODE_ENV`: 运行环境(development/production)
- `PORT`: 服务端口(默认8080
- `PORT`: 服务端口(默认 8080
- `GO_BACKEND_URL`: 后端服务地址

#### Docker 配置选项
Expand All @@ -135,7 +135,7 @@ restart: unless-stopped
```

#### 多架构支持
项目支持多架构Docker镜像
项目支持多架构 Docker 镜像
- `linux/amd64` - x86_64 架构
- `linux/arm64` - ARM 64位架构

Expand All @@ -147,7 +147,7 @@ restart: unless-stopped
## 🎯 使用方法

### 发送文件
1. 选择文件 → 生成取件码 → 分享6位码
1. 选择文件 → 生成取件码 → 分享 6 位码

### 文字传输
1. 输入文字内容 → 生成取件码 → 分享给对方
Expand All @@ -158,9 +158,9 @@ restart: unless-stopped
## 📊 项目架构

```
发送方 ←─── WebSocket信令 ───→ 服务器 ←─── WebSocket信令 ───→ 接收方
发送方 ←─── WebSocket 信令 ───→ 服务器 ←─── WebSocket 信令 ───→ 接收方
│ │
└────────────── WebRTC P2P直连传输 ──────────────────────────┘
└────────────── WebRTC P2P 直连传输 ──────────────────────────┘
```

## 🛠️ 本地开发
Expand Down