No description
  • TypeScript 96%
  • CSS 2%
  • JavaScript 1.7%
  • Nix 0.2%
  • HTML 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-10 20:13:20 +08:00
deployments fix: repair quick transfer and add local recent sessions 2026-10-09 18:19:14 +08:00
docs feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
locales feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
migrations feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
scripts fix: protect quick-transfer invitations and recover pairing 2026-10-09 23:58:35 +08:00
shared feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
tests feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
web feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
worker feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
.dev.vars.example fix: protect quick-transfer invitations and recover pairing 2026-10-09 23:58:35 +08:00
.env.example fix: protect quick-transfer invitations and recover pairing 2026-10-09 23:58:35 +08:00
.envrc update 2026-10-08 01:00:51 +08:00
.gitignore update 2026-10-08 01:00:51 +08:00
.yarnrc.yml update 2026-10-08 01:00:51 +08:00
biome.json update 2026-10-08 01:00:51 +08:00
CONTEXT.md chore: snapshot quick transfer, crypto fallback and PWA work before review 2026-10-09 17:19:10 +08:00
devenv.lock update 2026-10-08 01:00:51 +08:00
devenv.nix update 2026-10-08 01:00:51 +08:00
devenv.yaml update 2026-10-08 01:00:51 +08:00
LICENSE update 2026-10-08 01:00:51 +08:00
NOTICE fix: polish authentication and themed user interface 2026-10-08 01:07:07 +08:00
package.json fix: protect quick-transfer invitations and recover pairing 2026-10-09 23:58:35 +08:00
playwright.config.ts chore: snapshot quick transfer, crypto fallback and PWA work before review 2026-10-09 17:19:10 +08:00
README.md docs: clarify upload authentication requirement 2026-10-08 01:21:25 +08:00
tsconfig.base.json update 2026-10-08 01:00:51 +08:00
tsconfig.shared.json update 2026-10-08 01:00:51 +08:00
tsconfig.test.node.json fix: protect quick-transfer invitations and recover pairing 2026-10-09 23:58:35 +08:00
tsconfig.test.worker.json update 2026-10-08 01:00:51 +08:00
tsconfig.tools.json update 2026-10-08 01:00:51 +08:00
tsconfig.web.json update 2026-10-08 01:00:51 +08:00
tsconfig.worker.json feat: add persistent transfers and share quota management 2026-10-10 20:13:20 +08:00
vite.config.ts update 2026-10-08 01:00:51 +08:00
vitest.config.ts update 2026-10-08 01:00:51 +08:00
vitest.setup.web.ts update 2026-10-08 01:00:51 +08:00
vitest.web.config.ts update 2026-10-08 01:00:51 +08:00
vitest.worker.config.ts update 2026-10-08 01:00:51 +08:00
wrangler.jsonc fix: repair quick transfer and add local recent sessions 2026-10-09 18:19:14 +08:00
yarn.lock fix: protect quick-transfer invitations and recover pairing 2026-10-09 23:58:35 +08:00

gjz010/send

端到端加密的临时文件分享服务。文件内容与文件名都在浏览器端加密,服务端只接触密文。

功能

  • 有效期与撤销:分享可设置过期时间,也可随时手动撤销,撤销与过期立即生效。
  • 密码保护:可选的访问密码,在浏览器端参与解密。
  • 上传与下载控制:上传需通过 OIDC 登录;下载支持匿名访问或指定用户组限制。
  • 续传:同一浏览器内未完成的上传可在恢复窗口内继续,无需重新上传已传分片。
  • 双语与主题:界面提供中 / 英双语与浅色 / 深色主题。

技术架构

单个 Cloudflare Worker 同时承载前端静态资源与 API,元数据存 D1,密文与审计日志存 S3 兼容对象存储。除官方实例外,也支持用自有的 Cloudflare、S3 与 OIDC 独立自托管。

本地开发

开发环境由 Nix + devenv + direnv 提供固定版本的 Node 与 Yarn,无需全局安装:

direnv allow .            # 首次授权,在宿主受信终端执行
yarn install --immutable

yarn typecheck            # 类型检查(shared + web + worker)
yarn test:all             # 单元与集成测试
yarn build                # 构建前端到 dist/web

配置与部署

部署需要准备 Cloudflare、S3 兼容存储与 OIDC 提供方。完整步骤、Secret 管理与 D1 迁移见 docs/DEPLOYMENT.md;示例配置见 .env.example、.dev.vars.example 与 wrangler.jsonc。

文档

许可证

AGPL-3.0-or-later,全文见 LICENSE,or-later 声明见 NOTICE。以网络提供服务时,AGPL 要求向使用者提供对应源码。