This is a Next.js project bootstrapped with create-next-app
.
通过 yarn 启动 app
yarn dev
ui 重用组件 - radix 无头组件
- 自定义 UI 个性话的 自封装的
- Paragraph 段落
- LargeHeading 标题
- tsconfig 中对特殊路径配置路径别名
- layout 重写布局
- Providers 将布局提取单独写
- typescriptreact.json 代码片段 fc
- Navbar 导航栏的布局
- SignInButton SignOutButton 登录登出按钮
- ThemeToggle 明暗按钮
- 消息提醒弹窗
- page 主页的布局
- DocumentationTabs 代码片段切换 Tabs
- Tabs基础组件 在radix-ui tabs 基础上自定义样式
- Code 代码显示组件 放置 TabsContent 中切换
- 前端页面完成
- [...nextauth] 身份验证组件
- lib/db 数据库配置文件
- lib/auth nextauth 配置文件
- env 环境变量
- type/next-env.d.ts 对session JWT 添加 id 属性 ts支持、
- schema.prisma prisma 数据库 添加数据模型
- https://auth.planetscale.com/ 云数据库
- 本地是mysql5 选择服务器搭建mysql8.0 打开安全组 数据库设置远程连接 similarity
- orm 操作脚本 dbpush gen 初始化数据库
- google Oauth 没办法跳转正确页面 选用 Github 的
- dashboard 仪表盘页面
- ApiDashboard key 展示页面
- RequestApiKey 请求 key 页面
- CopyButton 复制组件
- Input API key 输入组件
- /api-key/create.ts 创建 apikey
- ApiDashboard apikey 仪表盘 展示历史和当前 apikey
- Table 表格组件 存放历史 apikey
- ApiKeyOptions apikey 选项下拉组件
- helpers/revoke-api-key 发起请求 作废 apikey
- api-key/revoke 处理请求 写入数据库 作废 apikey
- v1/similarity 处理文本相似度 有查询请求头部 apikey 是否合法 拿取合法 apikey 才能调用相似度 方法
- lib/openai openai 配置文件
- 获取 openai apikey 添加进 env
- middleware 全局中间件 处理速率限制 权限路由
- login/page 登录页
- UserAuthForm 登录点击按钮