@hyxf/pairdrop 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -3
- package/package.json +5 -4
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
PairDrop 让附近设备通过浏览器发送文件和文本。设备连接到同一个 PairDrop 服务后,可以发现彼此;完成配对后即可传输。桌面和移动设备均可使用,目前界面仅提供英文。
|
|
4
4
|
|
|
5
|
+
本文面向安装和使用 PairDrop 的用户,介绍启动、配对、运行配置和常见连接问题。源码开发与实现细节见 [Web 客户端说明](apps/web/README.md) 和 [服务端说明](apps/server/README.md)。
|
|
6
|
+
|
|
5
7
|
## 安装与启动
|
|
6
8
|
|
|
7
9
|
需要 Node.js 22 或更高版本。通过 npm 安装并启动:
|
|
@@ -30,7 +32,7 @@ pairdrop --port 4000 --open
|
|
|
30
32
|
|
|
31
33
|
配对信息和自定义设备名称保存在浏览器本地存储中。清除浏览器数据后需要重新配对;刷新页面前请保存已接收的文件。单次传输最多 100 个文件,总大小不超过 256 MiB。
|
|
32
34
|
|
|
33
|
-
设备优先通过 WebRTC 直连;直连不可用时,本地信令服务默认使用 WebSocket 中继。WebRTC、剪贴板和移动端系统分享等功能受浏览器安全要求限制,建议通过 HTTPS 访问。某些网络环境需要配置 TURN 服务器才能建立 WebRTC
|
|
35
|
+
设备优先通过 WebRTC 直连;直连不可用时,本地信令服务默认使用 WebSocket 中继。WebRTC、剪贴板和移动端系统分享等功能受浏览器安全要求限制,建议通过 HTTPS 访问。某些网络环境需要配置 TURN 服务器才能建立 WebRTC 连接。客户端的传输与浏览器能力边界见 [Web 客户端说明](apps/web/README.md#功能与边界)。
|
|
34
36
|
|
|
35
37
|
## 运行配置
|
|
36
38
|
|
|
@@ -62,6 +64,7 @@ PORT=4000 RTC_CONFIG=./rtc-config.json pairdrop
|
|
|
62
64
|
- 页面更新后无法连接时,重新打开所有设备上的 PairDrop 页面,避免旧页面继续使用不兼容的传输协议。
|
|
63
65
|
- WebRTC 无法直连时,可保持默认启用的 WebSocket 中继;跨网络使用时,可通过 `RTC_CONFIG` 配置 TURN 服务器,并通过 HTTPS 提供页面。
|
|
64
66
|
|
|
65
|
-
##
|
|
67
|
+
## 源码开发
|
|
66
68
|
|
|
67
|
-
|
|
69
|
+
- [Web 客户端说明](apps/web/README.md):前端结构、功能边界、本地开发和构建。
|
|
70
|
+
- [服务端说明](apps/server/README.md):服务端模块、状态归属、协议和发布流程。
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hyxf/pairdrop",
|
|
3
3
|
"description": "A simple file sharing app for local networks",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.4",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"packageManager": "pnpm@12.15.0",
|
|
7
7
|
"license": "MIT",
|
|
@@ -24,15 +24,16 @@
|
|
|
24
24
|
"scripts": {
|
|
25
25
|
"dev:c": "pnpm --filter @hyxf/pairdrop-web dev",
|
|
26
26
|
"dev:s": "pnpm --filter @hyxf/pairdrop-server dev",
|
|
27
|
+
"clean": "node scripts/clean.js",
|
|
27
28
|
"typecheck": "tsc -b --noEmit",
|
|
28
|
-
"build": "pnpm
|
|
29
|
+
"build": "pnpm clean && pnpm typecheck && pnpm --filter @hyxf/pairdrop-server build && pnpm --filter @hyxf/pairdrop-web build",
|
|
29
30
|
"prepack": "pnpm build",
|
|
30
31
|
"pairdrop": "node ./bin/pairdrop.js",
|
|
31
32
|
"start": "node ./bin/pairdrop.js",
|
|
32
33
|
"preview": "pnpm --filter @hyxf/pairdrop-web preview",
|
|
33
34
|
"lint": "eslint .",
|
|
34
|
-
"format": "prettier --write \"apps/**/*.{json,js,ts,tsx,css,md,html}\" \"
|
|
35
|
-
"format:check": "prettier --check \"apps/**/*.{json,js,ts,tsx,css,md,html}\" \"
|
|
35
|
+
"format": "prettier --write \"apps/**/*.{json,js,ts,tsx,css,md,html}\" \"scripts/**/*.js\" \".github/workflows/**/*.yml\" \"pnpm-workspace.yaml\" \"*.{json,js,ts,html,md}\"",
|
|
36
|
+
"format:check": "prettier --check \"apps/**/*.{json,js,ts,tsx,css,md,html}\" \"scripts/**/*.js\" \".github/workflows/**/*.yml\" \"pnpm-workspace.yaml\" \"*.{json,js,ts,html,md}\""
|
|
36
37
|
},
|
|
37
38
|
"dependencies": {
|
|
38
39
|
"@fastify/rate-limit": "^11.2.1",
|