mirror of
https://github.com/shuaiplus/nodewarden.git
synced 2026-06-20 13:00:39 +00:00
feat: Update README
This commit is contained in:
@@ -52,19 +52,26 @@ English: [`README_EN.md`](./README_EN.md)
|
|||||||
|
|
||||||
## 网页部署
|
## 网页部署
|
||||||
|
|
||||||
|
1. Fork `NodeWarden` 仓库到自己的 GitHub 账号
|
||||||
1. Fork 本仓库。若本项目对你有帮助,欢迎点个 Star。
|
2. 进入 [Cloudflare Workers 创建页面](https://dash.cloudflare.com/?to=/:account/workers-and-pages/create)
|
||||||
2. 打开 [Workers](https://dash.cloudflare.com/?to=/:account/workers-and-pages/create) ➜ `Continue with GitHub` ➜ 选择你 Fork 后的仓库(`NodeWarden`)➜ 下一步 ➜ (默认使用 R2 存储;若未开通,可用 KV 来代替,将**部署命令**改为 `npm run deploy:kv`)➜ 部署 ➜ 打开生成的链接
|
3. 选择 `Continue with GitHub`
|
||||||
|
4. 选择你刚刚 Fork 的仓库
|
||||||
| 储存 | 是否需绑卡 | 单个附件/Send文件上限 | 免费额度 |
|
5. 保持默认配置继续部署
|
||||||
|---|---|---|---|
|
6. 如果你打算用 KV 模式,把部署命令改成 `npm run deploy:kv`
|
||||||
| R2 | 需要 | 100 MB(软限制可更改) | 10 GB |
|
7. 等部署完成后,打开生成的 Workers 域名
|
||||||
| KV | 不需要 | 25 MiB(Cloudflare限制) | 1 GB |
|
8. 根据页面提示设置`JWT_SECRET` ,不建议临时乱填。这个值直接关系到令牌签发安全,正式环境至少使用 32 个字符以上的随机字符串。
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> 同步方法(更新仓库):
|
> 默认R2与可选KV的区别:
|
||||||
>- 手动:打开你 Fork 的 GitHub 仓库,看到顶部同步提示后,点击 `Sync fork` ➜ `Update branch`
|
> | 储存 | 是否需绑卡 | 单个附件/Send文件上限 | 免费额度 |
|
||||||
>- 自动:进入你的 Fork 仓库 ➜ `Actions` ➜ `Sync upstream` ➜ `Enable workflow`,会在每天凌晨 3 点自动同步上游。
|
> |---|---|---|---|
|
||||||
|
> | R2 | 需要 | 100 MB(软限制可更改) | 10 GB |
|
||||||
|
> | KV | 不需要 | 25 MiB(Cloudflare限制) | 1 GB |
|
||||||
|
|
||||||
|
|
||||||
|
## 更新方法:
|
||||||
|
- 手动:打开你 Fork 的 GitHub 仓库,看到顶部同步提示后,点击 `Sync fork` ➜ `Update branch`
|
||||||
|
- 自动:进入你的 Fork 仓库 ➜ `Actions` ➜ `Sync upstream` ➜ `Enable workflow`,会在每天凌晨 3 点自动同步上游。
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+23
-24
@@ -5,32 +5,31 @@
|
|||||||
<p align="center">
|
<p align="center">
|
||||||
A third-party Bitwarden-compatible server running on Cloudflare Workers.
|
A third-party Bitwarden-compatible server running on Cloudflare Workers.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
[](https://workers.cloudflare.com/)
|
[](https://workers.cloudflare.com/)
|
||||||
[](./LICENSE)
|
[](./LICENSE)
|
||||||
[](https://github.com/shuaiplus/NodeWarden/releases/latest)
|
[](https://github.com/shuaiplus/NodeWarden/releases/latest)
|
||||||
[](https://github.com/shuaiplus/NodeWarden/actions/workflows/sync-upstream.yml)
|
[](https://github.com/shuaiplus/NodeWarden/actions/workflows/sync-upstream.yml)
|
||||||
|
|
||||||
[Release Notes](./RELEASE_NOTES.md) | [Report an Issue](https://github.com/shuaiplus/NodeWarden/issues/new/choose) | [Latest Release](https://github.com/shuaiplus/NodeWarden/releases/latest)
|
[Release Notes](./RELEASE_NOTES.md) | [Report an Issue](https://github.com/shuaiplus/NodeWarden/issues/new/choose) | [Latest Release](https://github.com/shuaiplus/NodeWarden/releases/latest)
|
||||||
|
中文说明:[`README.md`](./README.md)
|
||||||
English: [`README.md`](./README.md)
|
|
||||||
|
|
||||||
> **Disclaimer**
|
> **Disclaimer**
|
||||||
> This project is for learning and communication purposes only. Please back up your vault regularly.
|
>
|
||||||
|
> 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.
|
> This project is not affiliated with Bitwarden. Please do not report NodeWarden issues to the official Bitwarden team.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Feature Comparison with Official Bitwarden Server
|
## Feature Comparison with the Official Bitwarden Server
|
||||||
|
|
||||||
| Capability | Bitwarden | NodeWarden | Notes |
|
| Capability | Bitwarden | NodeWarden | Notes |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| Web Vault | ✅ | ✅ | **Original Web Vault interface** |
|
| Web Vault | ✅ | ✅ | **Original Web Vault interface** |
|
||||||
| Full sync `/api/sync` | ✅ | ✅ | Optimized for official clients |
|
| Full sync `/api/sync` | ✅ | ✅ | Compatibility optimized for official clients |
|
||||||
| Attachment upload / download | ✅ | ✅ | Cloudflare R2 or KV |
|
| Attachment upload / download | ✅ | ✅ | Cloudflare R2 or KV |
|
||||||
| Send | ✅ | ✅ | Supports both text and file Sends |
|
| Send | ✅ | ✅ | Supports both text and file Sends |
|
||||||
| Import / Export | ✅ | ✅ | Supports Bitwarden JSON / CSV / **ZIP import with attachments** |
|
| Import / Export | ✅ | ✅ | Supports Bitwarden JSON / CSV / **ZIP import with attachments** |
|
||||||
| **Cloud Backup Center** | ❌ | ✅ | **Supports scheduled backups with WebDAV / E3** |
|
| **Cloud Backup Center** | ❌ | ✅ | **Scheduled backup to WebDAV / E3** |
|
||||||
| Password hint (web) | ⚠️ Limited | ✅ | **No email required** |
|
| Password hint (web) | ⚠️ Limited | ✅ | **No email required** |
|
||||||
| TOTP / Steam TOTP | ✅ | ✅ | Includes `steam://` support |
|
| TOTP / Steam TOTP | ✅ | ✅ | Includes `steam://` support |
|
||||||
| Multi-user | ✅ | ✅ | Invite-based registration |
|
| Multi-user | ✅ | ✅ | Invite-based registration |
|
||||||
@@ -46,19 +45,20 @@ English: [`README.md`](./README.md)
|
|||||||
- ✅ Mobile app
|
- ✅ Mobile app
|
||||||
- ✅ Browser extension
|
- ✅ Browser extension
|
||||||
- ✅ Linux desktop client
|
- ✅ Linux desktop client
|
||||||
- ⚠️ macOS desktop client not fully verified
|
- ⚠️ macOS desktop client has not been fully verified yet
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## Web Deploy
|
## Web Deploy
|
||||||
|
|
||||||
1. Fork this repository. If this project helps you, please consider giving it a Star.
|
1. Fork this repository. If this project helps you, consider giving it a Star.
|
||||||
2. Open [Workers](https://dash.cloudflare.com/?to=/:account/workers-and-pages/create) -> `Continue with GitHub` -> select your forked repository (`NodeWarden`) -> `Next` -> deploy.
|
2. Open [Workers](https://dash.cloudflare.com/?to=/:account/workers-and-pages/create) -> `Continue with GitHub` -> select your forked repository (`NodeWarden`) -> continue.
|
||||||
R2 is used by default. If R2 is unavailable for your account, you can use KV instead by changing the **deploy command** to `npm run deploy:kv`.
|
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.
|
||||||
|
|
||||||
| Storage | Card required | Single attachment / Send file limit | Free tier |
|
| Storage | Card required | Single attachment / Send file limit | Free tier |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| R2 | Yes | 100 MB (soft limit, can be adjusted) | 10 GB |
|
| R2 | Yes | 100 MB (soft limit, adjustable) | 10 GB |
|
||||||
| KV | No | 25 MiB (Cloudflare limit) | 1 GB |
|
| KV | No | 25 MiB (Cloudflare limit) | 1 GB |
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
@@ -71,7 +71,6 @@ English: [`README.md`](./README.md)
|
|||||||
```powershell
|
```powershell
|
||||||
git clone https://github.com/shuaiplus/NodeWarden.git
|
git clone https://github.com/shuaiplus/NodeWarden.git
|
||||||
cd NodeWarden
|
cd NodeWarden
|
||||||
|
|
||||||
npm install
|
npm install
|
||||||
npx wrangler login
|
npx wrangler login
|
||||||
|
|
||||||
@@ -92,13 +91,13 @@ npm run dev:kv
|
|||||||
|
|
||||||
- Remote backup supports **WebDAV** and **E3**
|
- Remote backup supports **WebDAV** and **E3**
|
||||||
- When `Include attachments` is enabled:
|
- When `Include attachments` is enabled:
|
||||||
- the ZIP still contains only `db.json` and `manifest.json`
|
- the ZIP still contains only `db.json` and `manifest.json`
|
||||||
- real attachment files are stored separately under `attachments/`
|
- actual attachment files are stored separately under `attachments/`
|
||||||
- later backups reuse existing attachments by stable blob name instead of uploading everything again
|
- later backups reuse existing attachments by stable blob name instead of re-uploading everything every time
|
||||||
- During remote restore:
|
- During remote restore:
|
||||||
- required attachment files are loaded from `attachments/`
|
- required attachment files are loaded from `attachments/` on demand
|
||||||
- missing attachments are skipped safely
|
- missing attachments are skipped safely
|
||||||
- skipped attachments do not leave broken rows in the restored database
|
- skipped attachments do not leave broken rows in the restored database
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -110,7 +109,7 @@ Current supported import sources include:
|
|||||||
- Bitwarden CSV
|
- Bitwarden CSV
|
||||||
- Bitwarden vault + attachments ZIP
|
- Bitwarden vault + attachments ZIP
|
||||||
- NodeWarden JSON
|
- NodeWarden JSON
|
||||||
- Multiple browser / password-manager formats visible in the web import selector
|
- Multiple browser / password-manager formats available in the web import selector
|
||||||
|
|
||||||
Current supported export formats include:
|
Current supported export formats include:
|
||||||
|
|
||||||
@@ -130,9 +129,9 @@ LGPL-3.0 License
|
|||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
|
|
||||||
- [Bitwarden](https://bitwarden.com/) - original design and clients
|
- [Bitwarden](https://bitwarden.com/) - Original design and clients
|
||||||
- [Vaultwarden](https://github.com/dani-garcia/vaultwarden) - server implementation reference
|
- [Vaultwarden](https://github.com/dani-garcia/vaultwarden) - Server implementation reference
|
||||||
- [Cloudflare Workers](https://workers.cloudflare.com/) - serverless platform
|
- [Cloudflare Workers](https://workers.cloudflare.com/) - Serverless platform
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Submodule
+1
Submodule nodewarden.wiki added at a27c3ebbe3
Reference in New Issue
Block a user