这页用于回答两个问题:
  1. 每个代码文件在哪里
  2. 这个文件大致负责什么
说明:
  • 范围是 gump-website 仓库中的主要代码与配置文件
  • 不包含 node_modules.next 等构建产物
  • hooks/types/ 当前没有代码文件

根目录与配置

路径功能
README.md项目总说明、部署示例、脚本与目录介绍
package.json脚本入口与依赖声明
next.config.tsNext.js 配置
tsconfig.jsonTypeScript 编译配置与路径别名
eslint.config.mjsESLint 规则配置
postcss.config.mjsPostCSS 配置
docker-compose.db.yml本地 PostgreSQL 容器编排
app/globals.css全局样式与字体注册

App Router(app/

路径功能
app/layout.tsx全站根布局
app/page.tsx首页,聚合 blog/reading/travel/projects 内容
app/blog/layout.tsxBlog 模块布局
app/blog/page.tsxBlog 列表页
app/blog/[slug]/page.tsxBlog 详情页(MDX 渲染、目录、系列导航)
app/blog/[slug]/assets/[...assetPath]/route.tsBlog 文章静态资源代理
app/blog/tag/[slug]/page.tsxBlog 标签聚合页
app/blog/series/[slug]/page.tsxBlog 系列聚合页
app/reading/page.tsxReading 列表页
app/reading/[slug]/page.tsxReading 详情页
app/reading/[slug]/assets/[...assetPath]/route.tsReading 资源代理
app/travel/page.tsxTravel 列表页
app/travel/[slug]/page.tsxTravel 详情页
app/projects/page.tsxProjects 列表页
app/projects/[slug]/page.tsxProjects 详情页
app/projects/[slug]/assets/[...assetPath]/route.tsProjects 资源代理
app/admin/layout.tsx后台布局根节点
app/admin/login/page.tsx后台登录页
app/admin/(dashboard)/layout.tsx后台仪表盘布局
app/admin/(dashboard)/page.tsx后台概览页
app/admin/(dashboard)/posts/page.tsxBlog 后台管理页
app/admin/(dashboard)/reading/page.tsxReading 后台管理页
app/admin/(dashboard)/travel/page.tsxTravel 后台管理页
app/admin/(dashboard)/projects/page.tsxProjects 后台管理页
app/admin/preview/blog/[slug]/page.tsxBlog 后台预览页
app/api/admin/login/route.ts后台登录 API
app/api/admin/logout/route.ts后台登出 API
app/api/admin/sync/route.ts内容同步 API(blog + travel)
app/api/uploads/[...assetPath]/route.ts上传资源访问 API

核心业务逻辑(lib/

路径功能
lib/prisma.tsPrisma Client 单例
lib/profile-locale.ts首页个人信息本地化逻辑
lib/auth/admin-session.ts后台密码校验、session 创建、cookie 管理
lib/admin/posts-editor-ui.ts后台 Posts 编辑 UI 相关辅助逻辑
lib/scripts/format-unknown-error.ts脚本错误格式化
lib/media/cover-assets.ts封面资源派生路径与尺寸选择
lib/media/image-encoding.ts图像编码处理
lib/blog/frontmatter.tsBlog frontmatter 解析与校验
lib/blog/slug.tsslug 处理与拼音化
lib/blog/mdx-code.tsBlog MDX 代码块相关处理
lib/blog/mdx-asset.tsBlog MDX 资源路径解析
lib/blog/file-upload.tsBlog 上传文件与内容读写
lib/blog/repository.tsBlog 数据读取仓储(DB + 文件回退)
lib/blog/sync.tsBlog 内容同步到数据库
lib/blog/content-trash.tsBlog 内容回收站/归档辅助逻辑
lib/reading/frontmatter.tsReading frontmatter 解析与校验
lib/reading/mdx-asset.tsReading MDX 资源路径解析
lib/reading/file-upload.tsReading 上传与内容读写
lib/reading/page-cover-settings.tsReading 列表页封面配置读取
lib/reading/repository.tsReading 数据读取仓储(DB + 文件回退)
lib/travel/frontmatter.tsTravel frontmatter 解析与校验
lib/travel/types.tsTravel 模块共享类型
lib/travel/admin-content.tsTravel 后台内容读取与整合
lib/travel/content.tsTravel 前台内容读取(index/hero/详情)
lib/travel/mdx-component-validation.tsTravel MDX 组件白名单校验
lib/travel/mdx-docs.tsTravel MDX 组件文档生成逻辑
lib/travel/image-pipeline.tsTravel 图像处理流水线
lib/travel/sync.tsTravel 内容同步到数据库
lib/projects/content.tsProjects MDX 内容分离读取
lib/projects/mdx-asset.tsProjects MDX 资源路径处理
lib/projects/file-upload.tsProjects 上传与内容读写
lib/projects/repository.tsProjects 数据仓储与筛选逻辑

组件层(components/

Layout 与公共展示

路径功能
components/layout/Header.tsx全站头部导航
components/layout/Footer.tsx全站底部
components/layout/card.tsx通用卡片基础组件
components/mdx/CodeBlock.tsxMDX 代码高亮渲染组件
components/blog/OnThisPageNav.tsxBlog 详情页右侧目录导航

首页区块

路径功能
components/sections/Hero.tsx首页 Hero 主视觉
components/sections/HeroMotion.tsxHero 动效逻辑
components/sections/Profile.tsx个人介绍区块
components/sections/Note.tsx首页说明区块
components/sections/blog/hero-blog.tsx首页 Blog 区块
components/sections/blog/hero-blog-card.tsx首页 Blog 卡片
components/sections/reading/hero-reading.tsx首页 Reading 区块
components/sections/reading/hero-reading-card.tsx首页 Reading 卡片
components/sections/travel/hero-travel.tsx首页 Travel 区块
components/sections/travel/hero-travel-card.tsx首页 Travel 卡片
components/sections/projects/hero-projects.tsx首页 Projects 区块

Reading 前台

路径功能
components/reading/ReadingModulePage.tsxReading 列表页容器组件
components/reading/ReadingHero.tsxReading 页面头图与标题区
components/reading/ReadingMasonry.tsxReading 卡片瀑布流布局
components/reading/ReadingNoteCard.tsxReading 列表卡片
components/reading/ReadingDetailArticle.tsxReading 详情正文组件

Travel 前台

路径功能
components/travel/TravelPageClient.tsxTravel 列表客户端页面
components/travel/TravelHero.tsxTravel 页面头部
components/travel/TravelStoryMasonry.tsxTravel 列表瀑布流
components/travel/TravelStoryCard.tsxTravel 列表卡片
components/travel/TravelFooter.tsxTravel 页底部
components/travel/TravelNoiseOverlay.tsxTravel 视觉噪点叠层
components/travel/travel-utils.tsTravel 前端数据转换工具
components/travel/travel-data.tsTravel 前端静态辅助数据
components/travel/mdx/index.tsxTravel MDX 组件入口
components/travel/mdx/catalog.tsTravel MDX 组件目录定义

Projects 前台

路径功能
components/projects/ProjectsPageClient.tsxProjects 列表客户端页面
components/projects/ProjectsHero.tsxProjects 页面头部
components/projects/ProjectsToolbar.tsxProjects 筛选工具条
components/projects/ProjectsFeaturedCard.tsxProjects 精选卡片
components/projects/ProjectCard.tsxProjects 列表卡片
components/projects/ProjectDetailModal.tsxProjects 详情弹窗
components/projects/types.tsProjects 前端类型

后台公共组件

路径功能
components/admin/MobileAdminNav.tsx后台移动端导航
components/admin/SyncContentButton.tsx后台一键同步按钮
components/admin/ConfirmSubmitButton.tsx二次确认提交按钮

后台 Blog(components/admin/posts/

路径功能
components/admin/posts/actions.tsBlog 后台 server actions
components/admin/posts/constants.tsBlog 后台常量
components/admin/posts/types.tsBlog 后台类型定义
components/admin/posts/PostsHeader.tsxBlog 后台页头
components/admin/posts/PostsViewTabs.tsxBlog 后台视图切换
components/admin/posts/PostsToolbar.tsxBlog 后台筛选栏
components/admin/posts/PostsNotifications.tsxBlog 后台提示消息
components/admin/posts/PostsCreatePanel.tsxBlog 新建面板
components/admin/posts/PostsDataTable.tsxBlog 数据表格
components/admin/posts/PostEditorDrawer.tsxBlog 编辑抽屉
components/admin/posts/PostsResizableDrawer.tsxBlog 可调宽抽屉容器
components/admin/posts/PostContentEditor.tsxBlog 正文编辑器
components/admin/posts/FilePickerInput.tsx文件选择输入控件
components/admin/posts/SeriesManagerPanel.tsx系列管理面板
components/admin/posts/TagManagerPanel.tsx标签管理面板

后台 Reading(components/admin/reading/

路径功能
components/admin/reading/actions.tsReading 后台 server actions
components/admin/reading/types.tsReading 后台类型
components/admin/reading/ReadingHeader.tsxReading 后台页头
components/admin/reading/ReadingToolbar.tsxReading 后台筛选栏
components/admin/reading/ReadingNotifications.tsxReading 后台消息
components/admin/reading/ReadingCreatePanel.tsxReading 新建面板
components/admin/reading/ReadingDataTable.tsxReading 数据表格
components/admin/reading/ReadingEditorDrawer.tsxReading 编辑抽屉
components/admin/reading/ReadingContentEditor.tsxReading 正文编辑器
components/admin/reading/ReadingPageCoverPanel.tsxReading 页面封面配置

后台 Travel(components/admin/travel/

路径功能
components/admin/travel/actions.tsTravel 后台 server actions
components/admin/travel/types.tsTravel 后台类型
components/admin/travel/TravelNotifications.tsxTravel 后台消息
components/admin/travel/TravelDataTable.tsxTravel 数据表格
components/admin/travel/TravelEditorDrawer.tsxTravel 编辑抽屉
components/admin/travel/TravelResizableDrawer.tsxTravel 可调宽抽屉容器
components/admin/travel/TravelContentEditor.tsxTravel 正文编辑器

后台 Projects(components/admin/projects/

路径功能
components/admin/projects/actions.tsProjects 后台 server actions
components/admin/projects/types.tsProjects 后台类型
components/admin/projects/ProjectsHeader.tsxProjects 后台页头
components/admin/projects/ProjectsToolbar.tsxProjects 后台筛选栏
components/admin/projects/ProjectsNotifications.tsxProjects 后台消息
components/admin/projects/ProjectsCreatePanel.tsxProjects 新建面板
components/admin/projects/ProjectsDataTable.tsxProjects 数据表格
components/admin/projects/ProjectEditorDrawer.tsxProjects 编辑抽屉
components/admin/projects/ProjectContentEditor.tsxProjects 正文编辑器
components/admin/projects/ProjectFeatureListEditor.tsxProjects Feature 列表编辑器

脚本(scripts/

路径功能
scripts/content-sync.ts执行 blog + travel 同步脚本
scripts/travel-mdx-docs.ts生成 travel MDX 组件文档
scripts/travel-images/build.tsTravel 图像处理构建脚本
scripts/projects-seed.tsProjects 种子数据初始化

数据模型与迁移(prisma/

路径功能
prisma/schema.prismaPrisma 数据模型定义
prisma/migrations/20260208120000_init_blog/migration.sqlBlog 初始模型迁移
prisma/migrations/20260208141825_add_series_cover_image/migration.sqlSeries 封面字段迁移
prisma/migrations/20260210123000_add_post_content_module/migration.sqlPost 内容模块字段迁移
prisma/migrations/20260210150000_backfill_post_module_by_content_dir/migration.sqlPost 模块字段回填迁移
prisma/migrations/20260214103000_add_cover_asset_pipeline_model/migration.sql封面资源流水线模型迁移
prisma/migrations/20260214114500_split_post_into_blogpost_and_bookpost/migration.sqlPost 拆分为 BlogPost/BookPost
prisma/migrations/20260214123000_drop_legacy_post_tables/migration.sql清理旧表迁移
prisma/migrations/20260216150955_add_travel_post_model/migration.sqlTravelPost 模型迁移
prisma/migrations/20260216151023_travel_categories_default/migration.sqlTravel categories 默认值迁移
prisma/migrations/20260221041345_add_project_module/migration.sqlProjects 模型迁移

内容源(content/

Blog

  • content/blog/ai-materials-first-principles/index.mdx
  • content/blog/dft-to-deployment/index.mdx
  • content/blog/thermal-agents-practice/index.mdx
  • content/blog/qiang-hua-xue-xi/index.mdx
  • content/blog/qiang-hua-xue-xi-ji-chu/index.mdx
功能:Blog 文章正文与 frontmatter 源文件。

Reading

  • content/reading/design-as-art/index.mdx
  • content/reading/invisible-cities/index.mdx
  • content/reading/shu-yi/index.mdx
  • content/reading/the-unbearable-lightness-of-being/index.mdx
  • content/reading/page-cover.json
功能:Reading 笔记正文与页面封面配置。

Travel

  • content/travel/index.json
  • content/travel/hero-section.json
  • content/travel/2023-california-highway-1/index.mdx
  • content/travel/2023-dali-slow-time/index.mdx
  • content/travel/2023-kyoto-autumn-whisper/index.mdx
  • content/travel/2023-paris-rain-night/index.mdx
  • content/travel/2023-siena-under-the-sun/index.mdx
  • content/travel/2023-zermatt-alpine-morning/index.mdx
  • content/travel/2024-chefchaouen-blue-maze/index.mdx
  • content/travel/2024-vik-edge-of-world/index.mdx
  • content/travel/2023-kyoto-autumn-whisper/manifest.json
功能:Travel 列表索引、首页配置、旅行正文和图像清单。

Projects

  • content/projects/nexus-queue/index.mdx
功能:项目详情补充 MDX(数据库字段之外的故事化内容)。

测试(tests/

路径功能
tests/profile-locale.test.ts个人信息本地化逻辑测试
tests/hero.tsxHero 相关测试占位文件
tests/config/next-config.test.tsNext 配置测试
tests/layout/root-layout-footer.test.ts根布局 Footer 渲染测试
tests/admin/posts-editor-ui.test.ts后台 Posts UI 逻辑测试
tests/scripts/format-unknown-error.test.ts错误格式化函数测试
tests/media/cover-assets.test.ts封面资源处理测试
tests/media/uploads-route.test.tsuploads 路由行为测试
tests/blog/frontmatter.test.tsBlog frontmatter 校验测试
tests/blog/sync.test.tsBlog 同步逻辑测试
tests/blog/repository-cover-image.test.tsBlog 封面解析测试
tests/blog/mdx-code.test.tsBlog MDX 代码处理测试
tests/blog/mdx-asset.test.tsBlog MDX 资源解析测试
tests/blog/file-upload.test.tsBlog 上传流程测试
tests/blog/content-trash.test.tsBlog 回收站逻辑测试
tests/blog/asset-filename.test.tsBlog 资源命名规则测试
tests/reading/frontmatter.test.tsReading frontmatter 测试
tests/reading/repository.test.tsReading 仓储读取测试
tests/reading/mdx-asset.test.tsReading 资源路径测试
tests/reading/file-upload.test.tsReading 上传流程测试
tests/reading/page-cover-settings.test.tsReading 封面配置读取测试
tests/reading/hero-reading-section.test.tsReading 首页区块测试
tests/reading/masonry-layout.test.tsReading 瀑布流布局测试
tests/travel/frontmatter.test.tsTravel frontmatter 测试
tests/travel/content.test.tsTravel 内容读取测试
tests/travel/admin-content.test.tsTravel 后台内容读取测试
tests/travel/sync.test.tsTravel 同步逻辑测试
tests/travel/image-pipeline.test.tsTravel 图像流水线测试
tests/travel/mdx-docs.test.tsTravel MDX 文档生成测试
tests/travel/mdx-components.test.tsxTravel MDX 组件渲染测试
tests/travel/travel-utils.test.tsTravel 工具函数测试
tests/travel/story-card.test.tsxTravel 卡片组件测试
tests/travel/hero-travel-section.test.tsTravel 首页区块测试
tests/projects/repository.test.tsProjects 仓储测试
tests/projects/content.test.tsProjects MDX 内容分离测试
tests/projects/mdx-asset.test.tsProjects 资源路径测试
tests/projects/file-upload.test.tsProjects 上传测试
tests/projects/project-editor-drawer.test.tsxProjects 后台编辑抽屉测试

维护建议

当你新增文件时,建议同步更新这页与以下页面:
  • /reference/routes
  • /reference/scripts
  • /reference/environment-variables