logo
0
0
WeChat Login
shuaiplus<2327005759@qq.com>
feat: update README and README_EN to improve layout and accessibility of links

NodeWarden Logo

Bitwarden-compatible server running on Cloudflare Workers

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

Telegram Channel | Telegram Group

中文说明 | Contributing

Disclaimer

This project is for learning and discussion purposes only. Please back up your vault regularly.

This project is not affiliated with Bitwarden. Please do not report NodeWarden issues to the official Bitwarden team.


Feature Comparison with the Official Bitwarden Server

CapabilityBitwardenNodeWardenNotes
Web VaultOriginal Web Vault interface
Full sync /api/syncCompatibility optimized for official clients
Attachment upload / downloadCloudflare R2 or KV
SendSupports both text and file Sends
Import / ExportSupports Bitwarden JSON / CSV / ZIP import with attachments
Cloud Backup CenterScheduled backup to WebDAV / E3
Password hint (web)⚠️ LimitedNo email required
TOTP / Steam TOTPIncludes steam:// support
Multi-userInvite-based registration
Organizations / Collections / Member rolesNot implemented
Login 2FA⚠️ PartialCurrently only user-level TOTP
SSO / SCIM / Enterprise directoryNot implemented

Tested Clients

  • ✅ Windows desktop client
  • ✅ Mobile app
  • ✅ Browser extension
  • ✅ Linux desktop client
  • ⚠️ macOS desktop client has not been fully verified yet

Web Deploy

  1. Fork this repository. If this project helps you, consider giving it a Star.
  2. Open Workers -> Continue with GitHub -> select your forked repository (NodeWarden) -> continue.
  3. R2 is used by default. If R2 is not enabled on your account, you can use KV instead by changing the deploy command to npm run deploy:kv.
  4. Deploy and open the generated URL.
StorageCard requiredSingle attachment / Send file limitFree tier
R2Yes100 MB (soft limit, adjustable)10 GB
KVNo25 MiB (Cloudflare limit)1 GB

TIP

How to keep your fork updated:

  • Manual: open your fork on GitHub, click Sync fork, then Update branch
  • Automatic: go to your fork -> Actions -> Sync upstream -> Enable workflow; it will sync upstream automatically every day at 3 AM

CLI Deploy

git clone https://github.com/shuaiplus/NodeWarden.git
cd NodeWarden
npm install
npx wrangler login

# Default: R2 mode
npm run deploy

# Optional: KV mode
npm run deploy:kv

# Local development
npm run dev
npm run dev:kv

Cloud Backup Notes

  • Remote backup supports WebDAV and E3
  • When Include attachments is enabled:
  • the ZIP still contains only db.json and manifest.json
  • actual attachment files are stored separately under attachments/
  • later backups reuse existing attachments by stable blob name instead of re-uploading everything every time
  • During remote restore:
  • required attachment files are loaded from attachments/ on demand
  • missing attachments are skipped safely
  • skipped attachments do not leave broken rows in the restored database

Import / Export

Current supported import sources include:

  • Bitwarden JSON
  • Bitwarden CSV
  • Bitwarden vault + attachments ZIP
  • NodeWarden JSON
  • Multiple browser / password-manager formats available in the web import selector

Current supported export formats include:

  • Bitwarden JSON
  • Bitwarden encrypted JSON
  • ZIP export with attachments
  • NodeWarden JSON variants
  • Full manual instance export from the backup center

License

LGPL-3.0 License


Credits


Star History

Star History Chart