p2p-explorer-web/README.md
2025-01-03 10:53:26 +08:00

73 lines
2.0 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.

# p2p-explorer-web - P2P 文件传输工具
p2p-explorer-web 是一个基于浏览器的 webtrc P2P 远程文件传输工具,远程文件 web 资源管理器,让用户能够安全、快速地在设备间传输文件,理想情况下无需通过服务器中转。
在线体验: https://explorer.kuraa.cc
## ✨ 特性
- 🔒 本地权限管控 P2P 流式文件传输
- 📁 支持文件夹传输
- 📋 集成剪贴板共享功能
- 🔗 简单的 ID 连接机制
- 🌐 无需安装,基于浏览器即可使用
- 💨 快速分享链接功能
## 需要注意使用的服务
文件交互全部走 webrtc使用 peerjs 的信令服务器wss://0.peerjs.com/peerjs交换 ice 候选(可信,没有本地数据上传),使用 peerjs 的打洞 0.peerjs.com:(可信,没有数据上传),当 udp 直连失败,会使用 peerjs 的中转服务(不可信,所有数据上传),后续会 docker 化,使用自己的 stun 与 turn 自定义部署。
## 🚀 快速开始
### 安装
```bash
# 克隆项目
git clone [项目地址]
# 安装依赖
yarn install
# 启动开发服务器
yarn dev
```
### 构建
```bash
# 构建生产版本
yarn build
# 将 static 目录完整的拷贝到 dist 目录下
cp -r static dist/
```
## 🎯 使用方法
1. 打开应用后,系统会自动生成你的 ID
2. 将你的 ID 分享给对方,或使用分享链接功能
3. 对方输入你的 ID 后即可建立连接
4. 选择要传输的文件或文件夹
## 🛠 技术栈
- WebRTC
- Vue 3
- TypeScript
- PeerJS
- Ant Design Vue
- Vite
## 待完成
- 本地发送到远程的 ui 展示
- 屏幕预览 语音沟通 引用文件文字交流
- docker 化,使用自己的 stun 与 turn 自定义部署
- 各种异常处理需要闭环
- 英文版本
- 打包下载
## 感谢
[PeerJS](https://peerjs.com/) 提供的 WebRTC 支持
[Ant Design Vue](https://2x.antdv.com/docs/vue/introduce-cn/) 提供的 UI 支持