Skip to content

Commit 81264c6

Browse files
committed
docs: new readme
1 parent f5544ec commit 81264c6

36 files changed

+806
-1437
lines changed

README.md

Lines changed: 53 additions & 143 deletions
Original file line numberDiff line numberDiff line change
@@ -2,185 +2,95 @@
22
<img src="docs/nodepassdash-logo.svg" alt="NodePassDash" height="80">
33
</div>
44

5-
![Version](https://img.shields.io/badge/version-3.3.1-blue.svg)
6-
![GitHub license](https://img.shields.io/github/license/NodePassProject/NodePassDash)
7-
8-
NodePassDash是一个现代化的 NodePass 管理界面,基于 Go 后端 + React + Vite、HeroUI 和 TypeScript 构建。提供实时隧道监控、流量统计和端点管理功能。
9-
10-
> ## 📋 2.x 升级到 3.x 迁移指南
11-
> **version 3.x 是一个重大版本更新!** 核心架构全面重构,从 Next.js 打包更换为 Vite 打包,后端重构为 GORM + Gin 架构。
12-
>
13-
> ### 升级步骤
14-
>
15-
> 1. **导出主控数据**
16-
>
17-
> - 在 2.x 版本的主控列表中,使用导出功能保存所有主控配置数据
18-
>
19-
> 2. **更新 Docker 配置**
20-
>
21-
> - 从仓库获取最新的 `docker-compose.yml` 配置文件
22-
>
23-
> 3. **拉取最新镜像**
24-
>
25-
> ```bash
26-
> docker pull ghcr.io/nodepassproject/nodepassdash:latest
27-
> ```
28-
>
29-
> 4. **重启容器**
30-
>
31-
> ```bash
32-
> # 在容器所在的compose文件目录运行
33-
> docker compose down && docker compose up -d
34-
> ```
35-
>
36-
> 5. **重新导入数据**
37-
>
38-
> - 访问新版本界面,重新创建主控配置
39-
> - 导入之前导出的主控数据
40-
> - 验证所有功能正常工作
41-
>
42-
> ### ⚠️ 注意事项
43-
> ***此版本不向下兼容,升级前请务必备份/导出主控数据,建议全新创建主控避免旧数据的影响!***
44-
> - **数据库不兼容**: 3.x 版本使用全新的数据库表结构,无法直接迁移 2.x 数据
45-
> - **配置格式变更**: 主控配置格式有所调整,建议手动重新配置重要隧道
46-
> - **功能变化**: 部分功能界面和操作方式有所变化,建议查看新版本文档
47-
48-
## ✨ 主要特性
49-
50-
- 🚀 **架构全新升级**: 从 Next.js 迁移至 Vite,构建速度显著提升;后端升级至 GORM + Gin 架构
51-
- 🎯 **实时监控升级**: 通过 SSE 实时推送隧道状态、流量数据和日志信息
52-
- 📊 **数据可视化增强**: 支持多时间段切换(24h/12h/6h/1h)和图表放大查看
53-
- 🎨 **个性化配置**: 新增个性化配置按钮,支持隐私设置、新手模式等
54-
- 🎬 **场景化创建**: 参考 iOS 版本设计,提供场景化隧道创建体验
55-
- 🔍 **网络诊断工具**: 内置网络调试和诊断功能,方便问题排查
56-
- 📱 **移动端APP联动**: 增加适配移动端APP的二维码导入显示
57-
- 🐳 **Docker 优化**: 多阶段构建,支持多架构部署
58-
59-
## 📸 界面预览
60-
61-
| | | |
62-
|---|---|---|
63-
| ![截图0](docs/00.png) | ![截图1](docs/01.png) | ![截图2](docs/02.png) |
64-
| ![截图3](docs/03.png) | ![截图4](docs/04.png) | ![截图5](docs/05.png) |
65-
66-
## 📂 目录结构(简化)
67-
```text
68-
├─ web/ 前端应用 (React + Vite + HeroUI)
69-
│ ├─ src/ React 组件和页面
70-
│ ├─ public/ 静态资源 (logo, favicon 等)
71-
│ └─ package.json 前端依赖和构建脚本
72-
├─ internal/ Go 业务代码
73-
├─ cmd/server/ Go 应用入口
74-
├─ Dockerfile 多阶段容器构建
75-
├─ build.sh 本地构建脚本
76-
└─ .github/workflows/ CI/CD 自动化构建
77-
```
5+
**Language:** English | [简体中文](docs/zh-CN/README.md)
786

79-
## ⚡️ 快速开始
80-
81-
<div style="display: flex; align-items: center; gap: 12px;">
82-
<a href="https://dash.nodepass.eu/">
83-
<img src="https://img.shields.io/badge/点击体验_Demo-000?style=for-the-badge&logo=heroui&logoColor=white&labelColor=000" alt="Deploy to NodePassDash">
84-
</a>
85-
<span><strong>演示账号:</strong> <code>nodepass</code> / <code>Np123456.</code></span>
86-
</div>
7+
![Version](https://img.shields.io/badge/version-3.4.0--beta1-blue.svg)
8+
![GitHub license](https://img.shields.io/github/license/NodePassProject/NodePassDash)
879

88-
> ⚠️ **重要提醒:演示环境,请勿更改密码,请勿填写任何敏感信息**
10+
NodePassDash is a modern web dashboard for managing **NodePass** endpoints, tunnels, and services. It ships as a single Go binary (Gin + GORM + SQLite) with an embedded React (Vite + TypeScript + HeroUI) frontend, and provides real-time telemetry via SSE/WebSocket.
8911

90-
我们提供三种部署方式,请根据你的需求选择:
12+
## Demo
9113

92-
### 🐳 方式一:Docker 部署(推荐)
14+
- Live demo: https://dash.nodepass.eu/
15+
- Demo account: `nodepass` / `Np123456.`
9316

94-
> 适合生产环境,开箱即用,自动处理依赖和环境配置。
17+
> Important: demo environment — do not change the password and do not submit any sensitive information.
9518
96-
📚 查看 [Docker 完整部署文档](docs/DOCKER.md) 了解详细配置
19+
## Highlights
9720

98-
### 📦 方式二:二进制部署
21+
- **Modern, clean dashboard**: responsive UI built with React + Vite + TypeScript + HeroUI.
22+
- **Real-time monitoring**: SSE/WebSocket updates for tunnel status, traffic, and logs.
23+
- **Multi-dimensional charts**: traffic trends (hour/day/week) with detailed drill-down views.
24+
- **Powerful NodePass management**: endpoints, tunnels, and services in one place (including batch actions & sorting).
25+
- **Scenario-based creation**: guided wizards/templates to create common setups faster and safer.
26+
- **OAuth2 login support**: configure providers (e.g. GitHub / Cloudflare) and optionally disable password login.
27+
- **i18n**: built-in multilingual UI support.
28+
- **Personalization**: privacy mode, theme/language onboarding, and configurable experience.
29+
- **Operational tooling**: file-log viewer, network debugging utilities, and endpoint system stats charts.
30+
- **Mobile-friendly workflows**: QR code output for importing into the mobile app.
31+
- **Safer at scale**: search/filter/sort, grouping, tagging, and batch operations for day-to-day maintenance.
32+
- **Release awareness**: built-in version visibility and update notifications to help you stay current.
33+
- **Portable architecture**: embedded frontend + single-service runtime, easy to run as a container or a systemd service.
9934

100-
> 适合 VPS/服务器环境,性能最优,支持 systemd 服务管理。
35+
## Screenshots
10136

102-
📚 查看 [二进制部署文档](docs/BINARY.md) 了解详细配置
37+
| | | |
38+
|-----------------------------------------------------------|-------------------------------------------------------------|---------------------------------------------------------------|
39+
| ![Login](docs/screenshots/00-login.gif) | ![Dashboard](docs/screenshots/01-dashboard.gif) | ![Tunnels](docs/screenshots/02-tunnels.gif) |
40+
| ![Tunnel Details](docs/screenshots/03-tunnel-details.gif) | ![Endpoints](docs/screenshots/04-endpoints.gif) | ![Endpoint Details](docs/screenshots/05-endpoint-details.gif) |
41+
| ![Services](docs/screenshots/06-services.gif) | ![Service Details](docs/screenshots/07-service-details.gif) | ![Settings](docs/screenshots/09-setting.gif) |
10342

104-
### 🛠️ 方式三:开发环境
10543

106-
> 适合开发者本地开发和调试。
44+
## Quick Start
10745

108-
📚 查看 [开发环境文档](docs/DEVELOPMENT.md) 了解完整开发流程
46+
- **Docker (recommended):** `docs/en/DOCKER.md`
47+
- **Binary + systemd:** `docs/en/BINARY.md`
48+
- **Development:** `docs/en/DEVELOPMENT.md`
10949

110-
## 🔧 命令行工具
50+
## Documentation
11151

112-
NodePassDash v3.0.0 提供了命令行参数来管理和配置应用:
52+
- **Migration Guide:** [docs/en/MIGRATION.md](docs/en/MIGRATION.md)
53+
- **Docker Guide:** [docs/en/DOCKER.md](docs/en/DOCKER.md)
54+
- **Binary Guide:** [docs/en/BINARY.md](docs/en/BINARY.md)
55+
- **Development Guide:** [docs/en/DEVELOPMENT.md](docs/en/DEVELOPMENT.md)
11356

114-
### 基本参数
57+
## CLI Flags
11558

11659
```bash
117-
# 指定端口启动(默认 3000)
118-
./nodepassdash --port 8080
119-
# 配置证书以启动https访问
120-
./nodepassdash --cert /path/to/cert.pem --key /path/to/cert.key
121-
# 启动时指定日志等级
122-
./nodepassdash --log-level debug
123-
# 显示帮助信息
12460
./nodepassdash --help
125-
# 显示版本信息
12661
./nodepassdash --version
127-
# 禁用用户名密码登录
62+
./nodepassdash --port 8080
63+
./nodepassdash --log-level INFO
64+
./nodepassdash --cert /path/to/cert.pem --key /path/to/key.pem
12865
./nodepassdash --disable-login
129-
```
130-
131-
### 管理工具
132-
133-
```bash
134-
# 重置管理员密码,注:重置后需要重启服务
66+
./nodepassdash --sse-debug-log
13567
./nodepassdash --resetpwd
136-
# 系统会提示输入新的用户名和密码
137-
# 数据库维护(检查和修复)
138-
./nodepassdash --db-check
139-
# 清理日志文件(保留最近30天)
140-
./nodepassdash --clean-logs
14168
```
14269

143-
### Docker 环境下使用
70+
## License
14471

145-
```bash
146-
# 在运行中的容器内重置密码,注:重置后需要重启容器
147-
docker exec -it nodepassdash ./nodepassdash --resetpwd
148-
149-
# 使用自定义端口启动容器
150-
docker run -d \
151-
--name nodepassdash \
152-
-p 8080:8080 \
153-
ghcr.io/nodepassproject/nodepassdash:latest \
154-
./nodepassdash --port 8080
155-
```
72+
BSD-3-Clause. See `LICENSE`.
15673

157-
## 📄 许可证
74+
## Disclaimer
15875

159-
本项目基于 [BSD-3-Clause 许可证](LICENSE) 开源。
76+
This project is provided “as is”, without any express or implied warranties. You are responsible for complying with local laws and regulations and using it only for lawful purposes. The authors are not liable for any direct, indirect, incidental, or consequential damages. The authors reserve the right to modify features and this statement at any time.
16077

161-
## ⚖️ 免责声明
78+
## Support
16279

163-
本项目以“现状”提供,开发者不提供任何明示或暗示的保证。用户使用风险自担,需遵守当地法律法规,仅限合法用途。开发者对任何直接、间接、偶然或后果性损害概不负责。进行二次开发须承诺合法使用并自负法律责任。开发者保留随时修改软件功能及本声明的权利。最终解释权归开发者所有。
80+
- Issues: https://github.com/NodePassProject/NodePassDash/issues
81+
- Telegram: https://t.me/NodePassGroup
82+
- Telegram Channel: https://t.me/NodePassChannel
16483

165-
## 📞 支持
166-
167-
- 🐛 问题报告: [GitHub Issues](https://github.com/NodePassProject/NodePassDash/issues)
168-
- 💬 社区讨论: [Telegram 群组](https://t.me/NodePassGroup)
169-
- 📢 频道: [Telegram 频道](https://t.me/NodePassChannel)
170-
171-
## 🤝 Sponsors
84+
## Sponsors
17285

17386
<table>
17487
<tr>
17588
<td width="240" align="center">
176-
<a href="https://vps.town"><img src="https://cdn.yobc.de/assets/vpstown.png"></a>
89+
<a href="https://vps.town"><img src="https://camo.githubusercontent.com/9ec623bd5609749c17a6d806b09d9d67d4e0b436d4893b369f7bc0d9f5158081/68747470733a2f2f6e6f6465706173732e65752f6173736574732f767073746f776e2e706e67"></a>
17790
</td>
17891
</tr>
17992
</table>
18093

181-
---
182-
183-
⭐ 如果这个项目对你有帮助,请给我们一个 Star!
94+
## Stargazers
18495

18596
[![Star History Chart](https://api.star-history.com/svg?repos=NodePassProject/NodePassDash&type=Date)](https://star-history.com/#NodePassProject/NodePassDash&Date)
186-

docker-compose-dev.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ services:
1515
# - DISABLE_LOGIN=true
1616
volumes:
1717
- /etc/localtime:/etc/localtime:ro
18-
# TLS证书
18+
# TLS certificates
1919
# - /path/to/cert.pem:/path/to/cert.pem
2020
# - /path/to/key.pem:/path/to/key.pem
21-
# 挂载日志
22-
- ./log:/app/log:ro
23-
# SQLite 数据库文件
21+
# Persist data
2422
- ./db:/app/db
23+
# Persist file logs (optional but recommended)
24+
- ./logs:/app/logs
2525
restart: unless-stopped
2626
# 健康检查
2727
healthcheck:

docker-compose-v6-create.yml

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ services:
44
image: ghcr.io/nodepassproject/nodepassdash:latest
55
container_name: nodepassdash
66
ports:
7-
- "3000:3000" # 整合的Next.js应用
7+
- "3000:3000" # Web UI + API (single port)
88
# environment:
99
# - PORT=3000
1010
# - LOG-LEVEL=INFO
@@ -13,16 +13,13 @@ services:
1313
# - DISABLE_LOGIN=true
1414
volumes:
1515
- /etc/localtime:/etc/localtime:ro
16-
# TLS证书
16+
# TLS certificates
1717
# - /path/to/cert.pem:/path/to/cert.pem
1818
# - /path/to/key.pem:/path/to/key.pem
19-
# 挂载日志
20-
- ./log:/app/log:ro
21-
# SQLite 数据库文件
19+
# Persist data
2220
- ./db:/app/db
23-
# 日志和数据目录,如需挂载,请先赋予文件夹权限```chmod 777 logs```,否则可能会导致容器启动失败
24-
# - ./logs:/app/logs
25-
# - ./data:/app/data
21+
# Persist file logs (optional but recommended)
22+
- ./logs:/app/logs
2623
restart: unless-stopped
2724
healthcheck:
2825
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/api/health"]
@@ -41,4 +38,4 @@ networks:
4138
driver: default
4239
config:
4340
- subnet: fd00::/80
44-
gateway: fd00::1
41+
gateway: fd00::1

docker-compose-v6.yml

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ services:
44
image: ghcr.io/nodepassproject/nodepassdash:latest
55
container_name: nodepassdash
66
ports:
7-
- "3000:3000" # 整合的Next.js应用
7+
- "3000:3000" # Web UI + API (single port)
88
# environment:
99
# - PORT=3000
1010
# - LOG-LEVEL=INFO
@@ -13,16 +13,13 @@ services:
1313
# - DISABLE_LOGIN=true
1414
volumes:
1515
- /etc/localtime:/etc/localtime:ro
16-
# TLS证书
16+
# TLS certificates
1717
# - /path/to/cert.pem:/path/to/cert.pem
1818
# - /path/to/key.pem:/path/to/key.pem
19-
# 挂载日志
20-
- ./log:/app/log:ro
21-
# SQLite 数据库文件
19+
# Persist data
2220
- ./db:/app/db
23-
# 日志和数据目录,如需挂载,请先赋予文件夹权限```chmod 777 logs```,否则可能会导致容器启动失败
24-
# - ./logs:/app/logs
25-
# - ./data:/app/data
21+
# Persist file logs (optional but recommended)
22+
- ./logs:/app/logs
2623
restart: unless-stopped
2724
healthcheck:
2825
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/api/health"]
@@ -38,4 +35,4 @@ networks:
3835
ipv6net:
3936
external: true # 使用外部创建的网络
4037
default:
41-
driver: bridge # 默认 IPv4 网络
38+
driver: bridge # 默认 IPv4 网络

docker-compose.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ services:
55
container_name: nodepassdash
66
# network_mode: "host" # 如需要ipv6,可考虑使用host模式
77
ports:
8-
- "3000:3000" # 整合的Next.js应用
8+
- "3000:3000" # Web UI + API (single port)
99
# environment:
1010
# - PORT=3000
1111
# - LOG-LEVEL=INFO
@@ -14,13 +14,13 @@ services:
1414
# - DISABLE_LOGIN=true
1515
volumes:
1616
- /etc/localtime:/etc/localtime:ro
17-
# TLS证书
17+
# TLS certificates
1818
# - /path/to/cert.pem:/path/to/cert.pem
1919
# - /path/to/key.pem:/path/to/key.pem
20-
# 挂载日志
21-
- ./log:/app/log:ro
22-
# SQLite 数据库文件
20+
# Persist data
2321
- ./db:/app/db
22+
# Persist file logs (optional but recommended)
23+
- ./logs:/app/logs
2424
restart: unless-stopped
2525
healthcheck:
2626
test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:3000/api/health"]

docs/00.png

-133 KB
Binary file not shown.

docs/01.png

-404 KB
Binary file not shown.

docs/02.png

-303 KB
Binary file not shown.

docs/03.png

-515 KB
Binary file not shown.

docs/04.png

-265 KB
Binary file not shown.

0 commit comments

Comments
 (0)