Files
zhuiguang-ai/.trae/specs/modules/03-pages.md
T

138 lines
5.9 KiB
Markdown

# 页面模块
## 前台页面
### / (首页)
- 文件: `src/app/page.tsx`
- 功能: 搜索框、AI工具分类网格(一级+二级分类,左侧导航+标签切换)、技能分类网格、最新上架工具、热门工具、CTA区块
- 数据源: `/api/homepage`, `/api/categories`, `/api/skill-categories`, `/api/tools`
### /tools (工具列表)
- 文件: `src/app/tools/page.tsx`
- 功能: 分类筛选侧边栏(一级分类)、定价模型筛选、搜索、分页
- 数据源: `/api/categories`, `/api/tools`
### /tools/[slug] (工具详情)
- 文件: `src/app/tools/[slug]/page.tsx`
- 功能: 工具完整信息展示、浏览计数+1、收藏按钮、评论评价
- 数据源: `/api/tools/[slug]`
### /categories/[slug] (分类详情)
- 文件: `src/app/categories/[slug]/page.tsx`
- 功能: 按分类slug展示该分类下的工具
- 数据源: `/api/categories`, `/api/tools`
### /skills (技能库)
- 文件: `src/app/skills/page.tsx`
- 功能: 技能分类筛选(一级+二级分类,左侧导航+标签切换)、搜索
- 数据源: `/api/skill-categories`, `/api/skills`
### /skills/[slug] (技能详情)
- 文件: `src/app/skills/[slug]/page.tsx`
- 功能: 技能完整信息展示、浏览计数+1、收藏按钮、五维评测雷达图(SkillReviewCard)、评论评价
- 数据源: `/api/skills/[slug]`, `/api/skills/[slug]/review`
### /login (用户登录)
- 文件: `src/app/login/page.tsx`
- 功能: 用户邮箱+密码登录/注册,GitHub OAuth登录
- 数据源: NextAuth Credentials Provider
### /user (用户中心)
- 文件: `src/app/user/page.tsx`
- 功能: 用户资料编辑、快捷入口、浏览历史
- 数据源: NextAuth session, `/api/user/history`
### /user/favorites (我的收藏)
- 文件: `src/app/user/favorites/page.tsx`
- 功能: 收藏的工具和技能列表,支持筛选和搜索
- 数据源: `/api/user/favorites`
---
## 后台页面
### /admin/login (登录)
- 文件: `src/app/(admin)/admin/login/page.tsx`
- 功能: 管理员登录表单,CSRF token + 原生POST
- 凭证: admin@zhuiguang.ai / admin123
### /admin/pending (待审核工具)
- 文件: `src/app/(admin)/admin/pending/page.tsx`
- 功能: 审核列表表格、多选复选框、全选、批量通过/拒绝、抓取缺失Logo/重新抓取全部Logo、编辑弹窗、单个通过/拒绝
- 数据源: `/api/admin/pending`, `/api/admin/pending/batch-publish`, `/api/admin/pending/batch-reject`, `/api/admin/pending/fetch-logos`
### /admin/pending-skills (待审核技能)
- 文件: `src/app/(admin)/admin/pending-skills/page.tsx`
- 功能: 审核列表表格、多选复选框、全选、批量通过/拒绝、一键全部通过、编辑弹窗、Star数展示、GitHub链接
- 数据源: `/api/admin/pending-skills`, `/api/admin/pending-skills/batch-publish`, `/api/admin/pending-skills/batch-reject`, `/api/admin/pending-skills/publish-all`
### /admin/tools (已发布工具)
- 文件: `src/app/(admin)/admin/tools/page.tsx`
- 功能: 工具管理表格、新增/编辑/删除、分页
- 数据源: `/api/admin/tools`, `/api/admin/categories`
### /admin/skills (已发布技能)
- 文件: `src/app/(admin)/admin/skills/page.tsx`
- 功能: 技能管理表格、编辑/删除、分页
- 数据源: `/api/admin/skills`, `/api/admin/skill-categories`
### /admin/categories (工具分类管理)
- 文件: `src/app/(admin)/admin/categories/page.tsx`
- 功能: 分类CRUD、树形展示、排序
- 数据源: `/api/admin/categories`
### /admin/skill-categories (技能分类管理)
- 文件: `src/app/(admin)/admin/skill-categories/page.tsx`
- 功能: 技能分类CRUD
- 数据源: `/api/admin/skill-categories`
### /admin/discover-tools (探索AI工具)
- 文件: `src/app/(admin)/admin/discover-tools/page.tsx`
- 功能: 选分类→复制提示词→粘贴JSON→导入审核列表→抓取Logo
- 流程: 4步流程(选分类/复制提示词/粘贴导入/抓取Logo),提示词含排除列表,JSON粘贴区+导入按钮,Logo批量抓取
- 数据源: `/api/admin/discover-tools`, `/api/admin/pending/fetch-logos`
### /admin/check-tools (检测AI工具)
- 文件: `src/app/(admin)/admin/check-tools/page.tsx`
- 功能: 4步流程(选范围/检测+抓取/Logo方法统计/处理失效),检测可访问性同时自动抓取缺失Logo,记录成功方法名统计
- 数据源: `/api/admin/check-tools`, `/api/admin/tools/[id]`, `/api/admin/pending/[id]`
### /admin/discover-skills (探索AI技能)
- 文件: `src/app/(admin)/admin/discover-skills/page.tsx`
- 功能: 选分类→复制提示词→粘贴JSON→导入审核列表
- 流程: 3步流程(选分类/复制提示词/粘贴导入),提示词含排除列表,JSON粘贴区+导入按钮
- 数据源: `/api/admin/discover-skills`
### /admin/update-skills (更新Skill技能)
- 文件: `src/app/(admin)/admin/update-skills/page.tsx`
- 功能: 3步流程(选范围/一键更新/自动同步),更新GitHub/Gitee/GitCode星级,展示Star变化表格
- 数据源: `/api/admin/update-stars`
### /admin/discover-news (AI新闻发现)
- 文件: `src/app/(admin)/admin/discover-news/page.tsx`
- 功能: 3步流程(复制提示词/粘贴导入/查看日报),新闻6大分类+热度评分,展示今日AI日报
- 数据源: `/api/admin/discover-news`
### /admin/system-config (系统配置)
- 文件: `src/app/(admin)/admin/system-config/page.tsx`
- 功能: Logo抓取配置、发现提示词配置等全局设置
- 数据源: `/api/admin/system-config`
---
## 布局
### 前台布局
- 文件: `src/app/layout.tsx`
- 结构: Geist字体 → AuthProvider → Header + main + Footer
### 后台布局
- 文件: `src/app/(admin)/admin/layout.tsx`
- 结构: 左侧边栏(4组菜单) + 右侧内容区
- 菜单分组:
- 工具管理: 待审核工具、已发布工具、工具分类
- 技能库: 待审核技能、已发布技能、技能分类
- AI发现: 探索AI工具、检测AI工具、探索Skill技能、更新Skill技能、AI新闻发现
- 系统配置: 系统配置
- 登录页不显示侧边栏