9.3 KiB
9.3 KiB
页面模块
前台页面
/ (首页)
- 文件:
src/app/page.tsx - 组件: HomePageClient
- 功能: 搜索框、AI工具分类网格(一级+二级分类,左侧导航+标签切换)、技能分类网格、最新上架工具、热门工具、CTA区块
- 数据源:
/api/homepage,/api/categories,/api/skill-categories,/api/tools
/tools (工具列表)
- 文件:
src/app/tools/page.tsx - 组件: ToolsContent
- 功能: 分类筛选侧边栏(一级分类)、定价模型筛选、搜索、分页、卡片网格展示
- 数据源:
/api/categories,/api/tools
/tools/[slug] (工具详情)
- 文件:
src/app/tools/[slug]/page.tsx - 功能: 工具完整信息展示、浏览计数+1、收藏按钮、评论评价(ReviewSection)
- 数据源:
/api/tools/[slug]
/categories/[slug] (分类详情)
- 文件:
src/app/categories/[slug]/page.tsx - 组件: CategoryContent
- 功能: 按分类slug展示该分类下的工具,分类标题+工具网格
- 数据源:
/api/categories,/api/tools
/reviews (评测中心)
- 文件:
src/app/reviews/page.tsx - 组件: ReviewsList, CommunitySidebar(侧栏)
- 布局: 三栏
grid-cols-[208px_1fr_280px]— HeroBanner横幅 + 左侧排行 + 内容区 + 右侧说明 - 左侧栏: 外部热度排行(GitHub Stars周涨幅) + 评测分值排行
- 右侧栏: 五维模型说明 + 评测评分规则
- 数据源:
/api/skill-reviews,/api/skill-reviews/rankings
/skills (技能库)
- 文件:
src/app/skills/page.tsx - 组件: SkillsPageClient
- 功能: 技能分类筛选(一级+二级分类,左侧导航+标签切换)、搜索、分页
- 背景配色: HeroBanner
orange橙色方案(#c2410c → #ea580c → #f97316) - 数据源:
/api/skill-categories,/api/skills
/skills/[slug] (技能详情)
- 文件:
src/app/skills/[slug]/page.tsx - 功能: 技能完整信息展示、浏览计数+1、收藏按钮、五维评测雷达图(SkillReviewCard)、评论评价(ReviewSection)
- 数据源:
/api/skills/[slug],/api/skills/[slug]/review
/daily (AI日报)
- 文件:
src/app/daily/page.tsx - 功能: 展示AI日报列表和详情
- 数据源:
/api/daily-reports
/login (用户登录)
- 文件:
src/app/login/page.tsx - 功能: 用户邮箱+密码登录/注册,GitHub OAuth登录
- 数据源: NextAuth Credentials Provider, GitHub OAuth Provider
/user (用户中心)
- 文件:
src/app/user/page.tsx - 功能: 用户资料编辑、快捷入口、浏览历史
- 数据源: NextAuth session,
/api/user/history
/user/favorites (我的收藏)
- 文件:
src/app/user/favorites/page.tsx - 功能: 收藏的工具和技能列表,支持筛选和搜索
- 数据源:
/api/user/favorites
/user/collections (收藏夹)
- 文件:
src/app/user/collections/page.tsx - 功能: 收藏夹列表管理
- 数据源:
/api/user/collections
/user/collections/[id] (收藏夹详情)
- 文件:
src/app/user/collections/[id]/page.tsx - 功能: 收藏夹内工具列表,拖拽排序,分享
- 数据源:
/api/user/collections/[id]
/user/[id] (会员个人空间)
- 文件:
src/app/user/[id]/page.tsx - 组件: ShareButton
- 功能: 用户资料展示(头像/昵称/简介/等级/积分)+ 统计面板 + 发布主题列表 + 评论历史 + 分享按钮
- 数据源:
/api/user/[id]
后台页面
/admin/login (登录)
- 文件:
src/app/(admin)/admin/login/page.tsx - 组件: LoginForm
- 功能: 管理员登录表单,CSRF token + 原生POST
- 凭证: admin@zhuiguang.ai / admin123
/admin/pending (待审核工具)
- 文件:
src/app/(admin)/admin/pending/page.tsx - 功能: 审核列表表格、多选复选框、全选、批量通过/拒绝、一键通过全部合格、抓取缺失Logo/重新抓取全部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/reviews (评测管理)
- 文件:
src/app/(admin)/admin/reviews/page.tsx - 组件: ReviewList, ReviewRow, ReviewStats
- 功能: 评测列表、统计卡片(已发布/草稿/平均评分)、单篇评测详情、状态管理
- 数据源:
/api/admin/reviews,/api/admin/reviews/[id]
/admin/reviews/[id] (评测详情)
- 文件:
src/app/(admin)/admin/reviews/[id]/page.tsx - 功能: 单篇评测详情展示、雷达图、生成内容(长文/视频脚本/社交卡片)
- 数据源:
/api/admin/reviews/[id]
/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
/admin/tasks (任务中心)
- 文件:
src/app/(admin)/admin/tasks/page.tsx - 功能: 7个定时任务总览卡片、各任务启用/禁用开关、手动运行按钮、最近执行状态、Cron表达式展示
- 数据源:
/api/admin/tasks/configs,/api/admin/tasks/run
/admin/tasks/logs (任务执行日志)
- 文件:
src/app/(admin)/admin/tasks/logs/page.tsx - 功能: 所有任务执行历史列表、按任务筛选、可展开查看result/error详情、分页
- 数据源:
/api/admin/tasks/logs
/admin/tasks/[taskKey] (单任务详情)
- 文件:
src/app/(admin)/admin/tasks/[taskKey]/page.tsx - 功能: 单任务统计卡片(成功率/失败率/平均耗时)、历史执行记录(可展开查看输出)、手动运行
- 数据源:
/api/admin/tasks/configs,/api/admin/tasks/logs,/api/admin/tasks/run
/admin/roles (角色权限管理)
- 文件:
src/app/(admin)/admin/roles/page.tsx - 功能: 左侧角色列表 + 右侧按分组的权限勾选网格、新建/删除自定义角色(系统角色受保护)、分组全选/取消全选、保存按钮实时同步到数据库
- 数据源:
/api/admin/roles,/api/admin/permissions,/api/admin/user-permissions
布局
前台布局
- 文件:
src/app/layout.tsx - 结构: Geist字体 → AuthProvider → Header + main + Footer
后台布局
- 文件:
src/app/(admin)/admin/layout.tsx - 结构: 左侧边栏(多组菜单) + 右侧内容区
- 菜单分组:
- 工具管理: 待审核工具、已发布工具、工具分类
- 技能库: 待审核技能、已发布技能、技能分类
- 评测管理: 评测管理
- AI发现: 探索AI工具、检测AI工具、探索Skill技能、更新Skill技能、AI新闻发现
- 系统配置: 系统配置
- 任务调度: 任务中心、任务日志
- 角色权限: 角色权限管理
- 登录页不显示侧边栏