mirror of
https://github.com/shuaiplus/nodewarden.git
synced 2026-06-20 13:00:39 +00:00
98e94e766f3d23945106f9b387b0de258592a91d
A third-party Bitwarden-compatible server running on Cloudflare Workers.
Release Notes | Report an Issue | Latest Release
English: README.md
Disclaimer
This project is for learning and communication 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 Official Bitwarden Server
| Capability | Bitwarden | NodeWarden | Notes |
|---|---|---|---|
| Web Vault | ✅ | ✅ | Original Web Vault interface |
Full sync /api/sync |
✅ | ✅ | Optimized for official clients |
| Attachment upload / download | ✅ | ✅ | Cloudflare R2 or KV |
| Send | ✅ | ✅ | Supports both text and file Sends |
| Import / Export | ✅ | ✅ | Supports Bitwarden JSON / CSV / ZIP import with attachments |
| Cloud Backup Center | ❌ | ✅ | Scheduled backup with WebDAV / E3 |
| Password hint (web) | ⚠️ Limited | ✅ | Supports registration, login assist, unlock, and settings |
| TOTP / Steam TOTP | ✅ | ✅ | Includes steam:// support |
| Multi-user | ✅ | ✅ | Invite-based registration |
| Organizations / Collections / Member roles | ✅ | ❌ | Not implemented |
| Login 2FA | ✅ | ⚠️ Partial | Currently only user-level TOTP |
| SSO / SCIM / Enterprise directory | ✅ | ❌ | Not implemented |
Tested Clients
- ✅ Windows desktop client
- ✅ Mobile app
- ✅ Browser extension
- ✅ Linux desktop client
- ⚠️ macOS desktop client not fully verified
Web Deploy
- Fork this repository. If this project helps you, please consider giving it a Star.
- Open Workers ->
Continue with GitHub-> select your forked repository (NodeWarden) ->Next-> deploy.
R2 is used by default. If R2 is unavailable for your account, you can use KV instead by changing the deploy command tonpm run deploy:kv.
| Storage | Card required | Single attachment / Send file limit | Free tier |
|---|---|---|---|
| R2 | Yes | 100 MB (soft limit, can be adjusted) | 10 GB |
| KV | No | 25 MiB (Cloudflare limit) | 1 GB |
Tip
How to keep your fork updated:
- Manual: open your fork on GitHub, click
Sync fork, thenUpdate 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 attachmentsis enabled:- the ZIP still contains only
db.jsonandmanifest.json - real attachment files are stored separately under
attachments/ - later backups reuse existing attachments by stable blob name instead of uploading everything again
- the ZIP still contains only
- During remote restore:
- required attachment files are loaded from
attachments/ - missing attachments are skipped safely
- skipped attachments do not leave broken rows in the restored database
- required attachment files are loaded from
Import / Export
Current supported import sources include:
- Bitwarden JSON
- Bitwarden CSV
- Bitwarden vault + attachments ZIP
- NodeWarden JSON
- Multiple browser / password-manager formats visible 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
- Bitwarden - original design and clients
- Vaultwarden - server implementation reference
- Cloudflare Workers - serverless platform
Star History
Languages
TypeScript
92.6%
CSS
6.1%
JavaScript
1.2%
HTML
0.1%
