# copyTO **Repository Path**: validate/copyto ## Basic Information - **Project Name**: copyTO - **Description**: 一个剪贴板共享APP,支持mac、win、网页,客户端独立数据,共享池管理。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-18 - **Last Updated**: 2026-08-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CopyTo / 拷贝兔 跨端剪切板云同步(单用户版)。 ## 结构 ``` apps/server Fastify API + WebSocket + SQLite + 托管网页 apps/admin 管理后台 / 网页客户端(构建后由 server 同端口托管) apps/desktop Electron 桌面客户端(托盘 + 原生剪贴板) packages/protocol 共享类型 docs/ 含 [流程图谱](docs/流程图谱.md)、[Mac 开发打包](docs/Mac开发打包.md)、[Mac 落地执行书](docs/Mac桌面端落地执行书.md) ``` ## 快速开始(推荐:单端口) ```bash npm install npm start ``` 打开 **http://127.0.0.1:8787/** 即可: | 能力 | 说明 | |------|------| | 管理后台 | 同端口网页 | | API / WS | 同端口(前端走 `/api/*`,桌面端仍直连根路径) | | 网页客户端 | 登录页「客户端登录」 | 默认管理员:`admin` / `Aa12345678` 临时登录:侧栏 **临时登录** 生成一次性 Key(到期强制下线)。 ### 开发模式(热更新前端) 可另开 Vite(5173),API 仍用 8787: ```bash npm run dev:server npm run dev:admin npm run dev:desktop ``` | 入口 | 地址 | |------|------| | 一体化(构建后) | http://127.0.0.1:8787/ | | 前端热更新 | http://localhost:5173 (代理到 8787) | | 桌面客户端 | Electron(`dev:desktop`) | ## 桌面客户端能力 - 系统托盘常驻(关闭窗口不退出) - 原生监听系统剪贴板(文本 / 图片) - 防回声(写回本机不重复上传) - 绑定码配对、历史详情、放大图片、暂停同步 - Token 自动续期 ## 联调流程 1. `npm start`(或 server + admin 分开跑) 2. 后台登录 → 绑定码 → 生成并复制 3. 桌面端输入绑定码配对 4. 任意复制文本或截图 → 自动出现在客户端与后台历史 ## 打包 Windows 客户端 ```bash npm run dist:desktop ``` 产物目录:`apps/desktop/release-fixed/` | 文件 | 说明 | |------|------| | `CopyTo-0.1.1-x64.exe` | NSIS 安装包(可改安装目录) | | `CopyTo-0.1.1-portable.exe` | 绿色免安装版 | | `win-unpacked/CopyTo.exe` | 解压后可直接运行 | 客户端默认连接 `http://127.0.0.1:8787`,请先启动服务端。 ## Docker 部署(服务端 + 网页) 镜像包含:**API / WebSocket / SQLite / 管理后台 / 网页客户端**(不含 Electron 桌面端)。 详细说明见 [docs/Docker部署.md](docs/Docker部署.md)。 ### 在线一键安装 **Linux / NAS:** ```bash curl -fsSL https://gitee.com/validate/copyto/raw/main/scripts/online-install.sh | bash ``` **Windows(Docker Desktop):** ```powershell irm https://gitee.com/validate/copyto/raw/main/scripts/online-install.ps1 | iex ``` ### 本机源码安装 ```bash cp .env.docker.example .env docker compose up -d --build docker compose logs -f copyto ``` 打开 **http://服务器IP:8787/** 数据持久化在 Docker volume `copyto-data`。 | 变量 | 说明 | |------|------| | `COPYTO_PORT` | 宿主机映射端口,默认 8787 | | `JWT_SECRET` | JWT 密钥(务必修改) | | `ADMIN_USERNAME` / `ADMIN_PASSWORD` | 管理员账号 | 桌面客户端把「服务器地址」设为 `http://你的服务器:8787` 即可配对使用。 ```bash docker compose down # 停止 docker compose down -v # 停止并删除数据卷(慎用) ```