This commit is contained in:
2026-07-01 23:22:26 +08:00
parent 6b429a8530
commit 4ddf6cc775
9 changed files with 71 additions and 10 deletions
+22 -5
View File
@@ -57,11 +57,28 @@ It's more than an API proxy: it ships with **credit billing, CDK top-ups, referr
## 🖼️ Screenshots ## 🖼️ Screenshots
| Playground | Dashboard | <div align="center">
|:---:|:---:| <sub>🎨 Modern generation frontend · light / dark admin console · data-driven ops dashboard</sub>
| ![Playground](docs/screenshots/playground.png) | ![Dashboard](docs/screenshots/dashboard.png) | </div>
| **Accounts** | **Logs** |
| ![Accounts](docs/screenshots/accounts.png) | ![Logs](docs/screenshots/logs.png) | <table>
<tr>
<td width="50%"><img src="docs/screenshots/dashboard.png" alt="Dashboard" /></td>
<td width="50%"><img src="docs/screenshots/models.png" alt="Models" /></td>
</tr>
<tr>
<td align="center"><b>📊 Dashboard</b><br/><sub>Users / volume / provider health / 24h trend</sub></td>
<td align="center"><b>🧩 Model management</b><br/><sub>Per-model capabilities, pricing & weight</sub></td>
</tr>
<tr>
<td width="50%"><img src="docs/screenshots/accounts.png" alt="Accounts" /></td>
<td width="50%"><img src="docs/screenshots/logs.png" alt="Logs" /></td>
</tr>
<tr>
<td align="center"><b>🔑 Account pools</b><br/><sub>Multi-account pools · weight / concurrency · CRUD</sub></td>
<td align="center"><b>📜 Call logs</b><br/><sub>Success / failure / in-progress · prompts & latency</sub></td>
</tr>
</table>
## 🚀 Features ## 🚀 Features
+22 -5
View File
@@ -57,11 +57,28 @@
## 🖼️ 界面预览 ## 🖼️ 界面预览
| 画图台 | 概览看板 | <div align="center">
|:---:|:---:| <sub>🎨 现代化画图前端 · 深 / 浅双主题管理后台 · 数据驱动的运营看板</sub>
| ![画图台](docs/screenshots/playground.png) | ![概览看板](docs/screenshots/dashboard.png) | </div>
| **账号管理** | **日志** |
| ![账号管理](docs/screenshots/accounts.png) | ![日志](docs/screenshots/logs.png) | <table>
<tr>
<td width="50%"><img src="docs/screenshots/dashboard.png" alt="概览看板" /></td>
<td width="50%"><img src="docs/screenshots/models.png" alt="模型管理" /></td>
</tr>
<tr>
<td align="center"><b>📊 概览看板</b><br/><sub>用户 / 生成量 / Provider 健康 / 24h 趋势</sub></td>
<td align="center"><b>🧩 模型管理</b><br/><sub>按模型独立配置能力、定价与权重</sub></td>
</tr>
<tr>
<td width="50%"><img src="docs/screenshots/accounts.png" alt="账号池管理" /></td>
<td width="50%"><img src="docs/screenshots/logs.png" alt="调用日志" /></td>
</tr>
<tr>
<td align="center"><b>🔑 账号池管理</b><br/><sub>多账号池 · 权重 / 并发 · 一键增删改</sub></td>
<td align="center"><b>📜 调用日志</b><br/><sub>成功 / 失败 / 进行中 · 提示词与耗时全留痕</sub></td>
</tr>
</table>
## 🚀 核心功能 ## 🚀 核心功能
Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

After

Width:  |  Height:  |  Size: 490 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 217 KiB

After

Width:  |  Height:  |  Size: 383 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 190 KiB

After

Width:  |  Height:  |  Size: 553 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 613 KiB

After

Width:  |  Height:  |  Size: 1.0 MiB

@@ -72,3 +72,21 @@ async function submit() {
</div> </div>
</div> </div>
</template> </template>
<style scoped>
/* mirror the 用户管理 edit modal so the two are visually identical */
.lbl {
display: block;
font-size: 0.72rem;
font-weight: 500;
color: rgb(255 255 255 / 0.55);
margin-bottom: 0.4rem;
}
/* disabled inputs — readable, but visually 'cool' so the admin knows they
can't change them (matches UsersView). */
.field:disabled {
opacity: 0.65;
cursor: not-allowed;
background: rgb(255 255 255 / 0.025);
}
</style>
+9
View File
@@ -415,6 +415,15 @@ button:not(:disabled), [role="button"]:not([aria-disabled="true"]) { cursor: poi
} }
select.field::-ms-expand { display: none; } select.field::-ms-expand { display: none; }
/* Number inputs using .field: hide the native +/- spinner arrows for a
cleaner look (value is still typeable / editable). */
input.field[type='number'] { -moz-appearance: textfield; appearance: textfield; }
input.field[type='number']::-webkit-outer-spin-button,
input.field[type='number']::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
/* status pill */ /* status pill */
.pill { @apply inline-flex items-center rounded-md px-2 py-0.5 text-xs font-medium; } .pill { @apply inline-flex items-center rounded-md px-2 py-0.5 text-xs font-medium; }