86 lines
2.2 KiB
Markdown
86 lines
2.2 KiB
Markdown
# 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
|