Skip to content

fuofox/nopass

 
 

Repository files navigation

NodeWarden Logo

运行在 Cloudflare Workers 上的 Bitwarden 兼容服务端

Powered by Cloudflare License: LGPL-3.0 Latest Release Sync Upstream

Telegram 频道 | Telegram 群组

English | 贡献指南

免责声明
本项目仅供学习与交流使用,请定期备份你的密码库。
本项目与 Bitwarden 官方无关,请不要向 Bitwarden 官方反馈 NodeWarden 的问题。


与 Bitwarden 官方服务端能力对比

能力 Bitwarden NodeWarden 说明
网页密码库 原创Web Vault界面
全量同步 /api/sync 已针对官方客户端做兼容优化
附件上传 / 下载 Cloudflare R2 或 KV
Send 支持文本与文件 Send
导入 / 导出 支持 Bitwarden JSON / CSV / ZIP 导入(包括附件)
云端备份中心 支持 WebDAV / E3 定时备份
密码提示(网页端) ⚠️ 有限 无需发送邮件
TOTP / Steam TOTP steam:// 支持
多用户 支持邀请码注册
组织 / 集合 / 成员权限 未实现
登录 2FA ⚠️ 部分支持 当前仅支持用户级 TOTP
SSO / SCIM / 企业目录 未实现

已测试客户端

  • ✅ Windows 桌面端
  • ✅ 手机 App
  • ✅ 浏览器扩展
  • ✅ Linux 桌面端
  • ⚠️ macOS 桌面端尚未完整验证

可视化快速部署

  1. Fork NodeWarden 仓库到自己的 GitHub 账号
  2. 进入 Cloudflare Workers & Pages
  3. 选择 Continue with GitHub 并选择你的仓库
  4. 构建命令填 npm run build,部署命令填 npm run deploy
  • 如果你打算用 KV 模式,把部署命令改成 npm run deploy:kv
  1. 等部署完成后,打开生成的 Workers 域名
  • Workers 默认域名在部分网络环境不可直连。如需自定义域名,到 Workers 设置里添加。

  • 页面提示缺少 JWT_SECRET 时,到 Workers 设置里添加 Secret。正式环境至少使用 32 个字符以上的随机字符串,不要使用临时值或示例值。

  • 这套流程里,用户实际做的是把代码交给 Cloudflare 构建并部署。代码里的 wrangler.tomlwrangler.kv.toml 决定绑定名,Worker 第一次处理请求时会自动初始化 D1 schema,不需要用户上传 SQL。

Tip

默认R2与可选KV的区别:

储存 是否需绑卡 单个附件/Send文件上限 免费额度
R2 需要 100 MB(软限制可更改) 10 GB
KV 不需要 25 MiB(Cloudflare限制) 1 GB

更新方法:

  • 手动:打开你 Fork 的 GitHub 仓库,看到顶部同步提示后,点击 Sync forkUpdate branch
  • 自动:进入你的 Fork 仓库 ➜ ActionsSync upstreamEnable workflow,会在每天凌晨 3 点自动同步上游。

CLI 部署

git clone https://github.com/shuaiplus/NodeWarden.git
cd NodeWarden

npm install
npx wrangler login

# 默认:R2 模式
npm run deploy

# 可选:KV 模式
npm run deploy:kv

# 本地开发
npm run dev
npm run dev:kv

云端备份说明

  • 远程备份支持 WebDAVE3
  • 勾选“包含附件”后:
    • ZIP 内仍只包含 db.jsonmanifest.json
    • 真实附件单独存放在 attachments/
    • 后续备份会按稳定 blob 名复用已有附件,不会每次全量重传
  • 远程还原时:
    • 会从 attachments/ 目录按需读取附件
    • 缺失的附件会被安全跳过
    • 被跳过的附件不会在恢复后的数据库中留下脏记录

导入 / 导出

当前支持的导入来源包括:

  • Bitwarden JSON
  • Bitwarden CSV
  • Bitwarden 密码库 + 附件 ZIP
  • NodeWarden JSON
  • 网页导入器里可见的多种浏览器 / 密码管理器格式

当前支持的导出方式包括:

  • Bitwarden JSON
  • Bitwarden 加密 JSON
  • 带附件的 ZIP 导出
  • NodeWarden JSON 系列
  • 备份中心中的实例级完整手动导出

开源协议

LGPL-3.0 License


致谢


Star History

Star History Chart

About

cloudflare上的第三方开源Bitwarden服务端

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 93.1%
  • CSS 6.4%
  • Other 0.5%