Technical Documentation: MatrixSeven/file-transfer-go
ℹ️ Provenance: Multi-Tier Ingestion · CodeWiki Reference
Overview (`README.md`)
文件快传 - P2P文件传输工具
安全、快速、简单的点对点文件传输解决方案 - 无需注册,即传即用
[在线体验](https://transfer.52python.cn) • [关注我](https://x.com/_MatrixSeven) • [帮助文档](https://transfer.52python.cn/help)
✨ 核心功能[端到端数据传输完全基于WebRTC的P2P直连/文件在线传输]
- 📁 文件传输 - 支持多文件同时传输
- 📝 文字传输 - 快速分享文本内容
- 🖥️ 桌面共享 - 实时屏幕共享
- 🖥️ 目录同步 - 在现代浏览器下支持目录同步
- 🔗 连接状态同步 - 实时连接状态UI同步
- 🔒 端到端加密 - 数据传输安全,服务器不存储文件
- 🖥️ 文件断点传输 - P2P/WS下大文件断点续传支持
- 📱 响应式设计 - 完美适配手机、平板、电脑
- 🖥️ 多平台支持 - 支持linux/macos/win 单文件部署
🚀 技术栈
前端技术栈
- 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 一键部署(推荐)
bash
# 使用 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方式二:本地构建部署
bash
git clone https://github.com/MatrixSeven/file-transfer-go.git
cd file-transfer-go
./build-fullstack.sh
./dist/file-transfer-go访问 http://localhost:8080 开始使用
方式三:开发环境部署
bash
# 后端服务
make dev
# 前端服务(新终端)
cd chuan-next && yarn && yarn dev部署配置说明
环境变量配置
NODE_ENV: 运行环境(development/production)PORT: 服务端口(默认8080)GO_BACKEND_URL: 后端服务地址
Docker 配置选项
yaml
# 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位码
文字传输
- 输入文字内容 → 生成取件码 → 分享给对方
桌面共享
- 点击共享桌面 → 生成取件码 → 对方输入码观看
📊 项目架构
text
发送方 ←─── WebSocket信令 ───→ 服务器 ←─── WebSocket信令 ───→ 接收方
│ │
└────────────── WebRTC P2P直连传输 ──────────────────────────┘🛠️ 本地开发
bash
# 后端
make dev
# 前端
cd chuan-next && yarn && yarn dev📄 许可证
MIT License
Overview (`chuan-next/README.md`)
传传传 - 跨平台文件传输工具
简单、快速、安全的点对点文件传输解决方案
✨ 核心功能
- 📁 文件传输 - 支持多文件同时传输,断点续传
- 📝 文字传输 - 快速分享文本内容
- 🖥️ 桌面共享 - 实时屏幕共享(开发中)
- 🔗 URL路由 - 支持直链分享特定功能
🚀 技术栈
- 前端: Next.js 15 + React 18 + TypeScript + Tailwind CSS
- 后端: Go + WebSocket + Gin框架
- 部署: Docker + Docker Compose
📦 快速开始
本地开发
bash
# 克隆项目
git clone https://github.com/MatrixSeven/file-transfer-go.git
cd file-transfer-go
# 启动后端服务
make dev
# 启动前端服务
cd chuan-next
npm install
npm run devDocker部署
bash
# 一键启动所有服务
docker-compose up -d
# 访问应用
open http://localhost:8080🎯 URL参数
支持通过URL直接跳转到特定功能:
text
/?type=file&mode=send # 文件传输-发送
/?type=text&mode=receive # 文字传输-接收
/?type=desktop&mode=send # 桌面共享-共享🌟 特色
- ⚡ 零配置 - 无需注册登录,即开即用
- 🔒 端到端 - 点对点传输,服务器不存储文件
- 📱 响应式 - 完美适配手机、平板、电脑
- 🎨 现代UI - 精美的毛玻璃效果界面
📄 许可证
MIT License
--- METRICS ---
- Files Extracted: 2
- Estimated Token Budget: ~889 tokens
- Canonical Reference: https://codewiki.google/github.com/MatrixSeven/file-transfer-go