Files
newapi-dashboard/README.md
2026-03-09 07:10:02 +08:00

86 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# NewAPI Dashboard
NewAPI 全栈管理面板,提供用量监控、账单管理、多站点代理等功能。
## 技术栈
| 层级 | 技术 |
|------|------|
| 前端 | React 18 · Ant Design 5 · Zustand · Vite 6 |
| 后端 | Express · better-sqlite3 · tsx |
| 部署 | Docker 多阶段构建 · docker-compose |
## 功能
- **数据看板** — 用量趋势图、模型调用占比、Token 消耗概览、最近调用日志
- **账单管理** — 账单记录查询、PDF 账单导出(支持中文字体)
- **多站点代理** — 反向代理多个 NewAPI 实例,统一入口
- **用户认证** — 登录鉴权、HMAC 签名、会话管理
- **管理后台** — 站点管理、用户管理
## 快速开始
### Docker 部署(推荐)
```bash
docker compose up -d
```
服务默认运行在 `http://localhost:3001`
自定义配置:
```bash
HMAC_SECRET=your-secret docker compose up -d
```
### 本地开发
```bash
# 安装依赖
npm install
# 启动开发环境(前端 + 后端同时启动)
npm start
# 或分别启动
npm run dev # 前端 :3000
npm run server # 后端 :3001
```
### 构建生产版本
```bash
npm run build
```
## 项目结构
```
├── src/ # 前端源码
│ ├── pages/ # 页面Dashboard、Login、Billing、Admin
│ ├── components/ # 组件(图表、卡片、布局)
│ ├── api/ # API 请求层
│ ├── store/ # Zustand 状态管理
│ └── utils/ # 工具函数
├── server/ # 后端源码
│ ├── routes/ # 路由auth、billing、proxy、sites
│ ├── middleware/ # 中间件(鉴权)
│ ├── utils/ # 工具PDF 生成、字体)
│ └── db.ts # SQLite 数据库
├── Dockerfile # 多阶段构建
├── docker-compose.yml # 容器编排
└── vite.config.ts # Vite 配置
```
## 环境变量
| 变量 | 说明 | 默认值 |
|------|------|--------|
| `PORT` | 服务端口 | `3001` |
| `HMAC_SECRET` | HMAC 签名密钥 | 内置默认值(生产环境请务必修改) |
## License
MIT