跳到主要内容

文件结构

在成功在本地运行平台后,下一步是了解程序的结构。这样,在修改各种功能时,你就可以快速找到相应的文件夹进行修改。以下列出了程序的主要结构,后面会有解释。

OneDayBuild ①
├── app ②
│ ├── [locale]
│ │ ├── (dashboard) ③
│ │ │ ├── (route)
│ │ │ │ ├── agentui
│ │ │ │ ├── ai
│ │ │ │ ├── dashboard
│ │ │ │ └── setting
│ │ │ └── layout.js
│ │ └── (site) ④
│ │ │ ├── (auth)
│ │ │ │ ├── changepassword
│ │ │ │ ├── login
│ │ │ │ └── register
│ │ │ ├── privacy-policy
│ │ │ ├── theme
│ │ │ ├── tos
│ │ │ └── layout.js
│ │ ├── layout.js
│ │ └── page.jsx
│ └── api ⑤
│ ├── ...
│ └── api
├── components ⑥
│ ├── ...
│ └── components...jsx
├── libs ⑦
│ ├── i18n
│ │ └── messages
│ │ │ ├── en.json
│ │ │ └── cn.json
│ ├── themes
│ │ └── providers.js
│ ├── faqs.js
│ ├── prismadb.jsx
│ └── seo.js
├── prisma ⑧
│ └── schema.prisma
├── public ⑨
│ └── img
├── .env
├── config.js
├── middleware.js
├── next.config.js
├── package.json
├── README.md
└── tailwind.config.js

① 根目录

由于这是一个标准的 Next.JS 程序,因此根目录中的内容也是标准的。一些目录包括:

  • app:程序的主要位置。
  • components:所有使用的组件的位置。
  • libs:平台函数库的位置。
  • public:平台相关资源的位置,例如可以直接通过 URL 访问的图片。
  • .envconfig.js:在 平台配置 部分中描述。

② app

我们认为,一个 SaaS 平台通常由两部分组成。在用户登录之前,我们称之为 frontend 程序,这通常是一个用户浏览和获取信息的网站程序。在登录后,我们称之为 backend 程序,用户通常在界面上执行操作。app 文件夹中的内容包括:

  • [locale]i18n 所需的文件结构,如果您没有 i18n 需求,我们将提供不包含 i18n 功能的源代码,因此没有此层目录。
  • [locale] 中的 (dashboard) 包含 backend 程序,而 (site) 包含 frontend 程序。
  • api 文件夹包含各种第三方服务所需的 API 信息。
  • [locale] 下的 page.jsx 是平台网站的首页。如果您在获取平台后第一步是快速构建网站,可以从修改此页面开始。

③ dashboard

OneDayBuild 为用户进入后端提供了几个功能,如果需要,可以直接使用:

  • (dashboard) 文件夹包含登录后显示的页面和程序,文件夹名称用括号括起来,以便不出现在 URL 中。
  • UI 提供一个 UI 材料库,基于 shadcn/ui 完成。
  • ai 提供一个 AI 助手聊天界面,界面使用 Vercel 的 Chat 模块实现。您可以设置助手的个性并直接聊天。更改个性设置允许您直接提供服务。
  • setting 是修改用户配置文件的界面。每个登录系统都有一个用户基本信息数据库,用户可以在登录后通过界面修改信息,这对于 SaaS 平台来说是必要的。为了防止程序员浪费时间在这些乏味但必要的任务上,OneDayBuild 提供了界面和源代码的整个功能。

④ site

site 文件夹中的内容是用于 frontend 程序的。除了首页之外,所有其他内容都可以放在这里。

  • auth 文件夹提供登录、注册和密码恢复的程序。密码恢复功能对于用户在登录过程中忘记密码是必需的。为了防止程序员浪费时间在这些乏味但必要的任务上,OneDayBuild 也提供了源代码。
  • privacy-policy 网站的政策声明页面。我们不仅提供页面的源代码,还提供生成声明内容的方法。借助 ChatGPT 和我们提供的提示,您可以生成专业的声明内容。
  • tas 网站的条款和服务页面。与政策页面类似,我们也提供生成内容的方法。
  • theme 包含 OneDayBuild 为开发人员提供的字体、界面效果和动画。这些满足了网站生产过程中需要的效果,易于使用且快速有效。

⑤ API

此文件夹包含所有第三方服务集成所需的 API。

⑥ 组件

平台使用的组件可以在这里找到。

  • Front 开头的组件与网站内容相关。
  • Change 开头的组件与密码恢复功能的页面相关。
  • Profile 开头的组件是修改个人信息的界面。

⑦ libs

libs 文件夹主要包含一些封装的服务、平台基本数据处理和一些辅助函数。

此文件夹包括 i18nseoprismaDB 等的配置和语言包。如果您没有异议这些服务,不需要修改现有文件。

⑧ prisma

OneDayBuild 提供的平台使用 Prisma 与 Next.js 链接到数据库。

此文件夹中的文件是 schema 的描述文件。具体使用,请参见此处。

⑨ public

此文件夹包含可以直接通过 URL 访问的公共文件。通常,需要绝对地址的文件可以放在这里,例如图片和视频。