ChenTingToDo 是一个使用 Next.js、Markdown、Pagefind 和 Vercel 构建的个人数字花园,用来记录 AI 学习、项目开发、环境配置和问题复盘。
- 正式网站:https://www.chentingtodo.com
- 文章来源:
content/articles/*.md - 项目来源:
content/projects/*.md - 生产分支:
main
- Node.js 22
- npm 10 或更高版本
- Git
首次安装:
npm ci启动本地开发服务器:
npm run dev浏览器访问 http://localhost:3000。
| 命令 | 用途 |
|---|---|
npm run dev |
启动本地开发环境 |
npm run lint |
执行 ESLint 检查 |
npm run typecheck |
执行 TypeScript 类型检查 |
npm test |
执行 Markdown 安全测试 |
npm run build |
生成静态站点和 Pagefind 索引 |
npm run check |
依次执行 lint、类型检查、测试和生产构建 |
npm run monitor:postcss |
检查 Next.js 内置 PostCSS 是否已有官方修复 |
提交或发布前至少运行:
npm run check文章自动导入与发布格式仍在研究中。现阶段发布文章时:
- 在
content/articles新建 Markdown 文件,文件名作为文章 URL slug。 - 参考现有文章填写 frontmatter。
- 正文从二级标题
##开始,页面标题由网站生成。 - 本地运行
npm run check。 - 确认文章页、标签筛选和搜索结果正常。
- 显式提交文章文件并推送到
main,由 Vercel 自动部署。
当前 frontmatter 示例:
---
title: "文章标题"
date: "2026-07-19"
tags: ["Next.js", "Vercel"]
category: "问题复盘"
description: "一句话说明文章解决的问题。"
published: true
---不要在文章中提交 API Key、Token、邮箱、内网地址、账号信息或其他隐私数据。文章发布工具完成前,以现有代码和文章为准,不擅自扩展格式。
.github/workflows/ci.yml在推送到main和 Pull Request 时使用 Node.js 22 运行npm ci与npm run check。.github/workflows/dependency-monitor.yml每周检查高危依赖漏洞和 Next.js 内置 PostCSS 的修复状态,也支持手动运行。.github/dependabot.yml每周检查 npm 依赖、每月检查 GitHub Actions 版本。
当前 Next.js 内置 PostCSS 告警已经过风险评估:本站不接受或处理访客 CSS,不存在公告要求的利用链路。监控会在 Next.js backport 提供修复后主动失败并提示升级;不要执行会把 Next.js 降级到旧版本的 npm audit fix --force。
main 推送后由 Vercel 自动构建并部署。生产构建会执行:
next build
→ 静态导出到 out
→ Pagefind 生成搜索索引
→ Vercel 发布正式站点
部署完成后检查:首页、文章列表、文章详情、标签筛选、搜索、移动端布局、浏览器控制台和安全响应头。
CODE_AUDIT_REPORT_2026-07-18.md:修复前的代码与产品审查快照。GOAL_EXECUTION_LOG_2026-07-18.md:安全加固与生产部署记录。GOAL_EXECUTION_LOG_2026-07-19.md:CI、依赖监控、Node 22 和文档维护记录。ARTICLE_PUBLISHING_PLAN_2026-07-18.md:文章格式与发布流程研究稿,尚未纳入正式实现。