从想法到上线:我用AI在一天内“摸”出了一个面试文档系统

简介: 需要特别说明的是,这个项目只是一个知识载体,真正有价值的,是其中沉淀的内容。工具帮你降低了表达的门槛,但坚持每天更新知识内容、在使用中持续优化项目,才是这件事能否走远的关键。AI 不会替代开发者,但它正在重新定义“开发者”的门槛。以前,一个想法到产品之间,隔着厚厚的编程语法、框架选型、环境配置等障碍。而现在,AI 像一位 7x24 小时在线的资深搭档,帮你把这些“脏活累活”快速落地。**重要的不再是你掌握多少语法,而是你是否有清晰的逻辑、能否准确地描述需求,以及是否愿意把自己的想法付诸实践。**

随着 AI 编程工具的日益成熟,对于我们个人而言,只要拥有一个想法,将其变为项目和产品的难度已经大大降低。无论是否有编程经验,我们每个人都可以扮演产品经理、全栈开发等角色。最近,我正好有一个想法,想和大家分享下我从想法到项目的完整经历。

项目背景

最近公司毫无征兆地裁掉了一部分同事,所以我打算重启刷面试题的计划。一方面是为了巩固基础知识,另一方面也希望能以面试题为切入点,了解和学习一些 AI 相关的知识。

基于这个目的,我发现单纯看面经很容易忘记,也达不到预期的效果。如果通过编码或写文档的方式走一遍,效果可能会更好。然而,常规的 Markdown 编辑器或在线文档功能有限,有的数据保存在本地无法同步,有的功能不全,有的无法分享,还有的不能与他人交流。

因此,一个可以免费部署到公网、支持多设备共享、便于与他人交流、并且可以个性化定制的项目变得十分必要。这正是我今天要介绍的这个项目的由来。

项目信息及效果

首页、文档结构树、顶部栏

阅读数、分类、标签、介绍

评论

提示

sequence

chart图表

项目开发工具

  • 开发 AI 工具:CodeBuddy CN

开发流程

  • 第一步:创建文件夹

创建一个项目目录,并使用 CodeBuddy CN 打开。

  • 第二步:确认方案

打开 CodeBuddy CN 对话框,我使用的是 Craft 模式,模型选择 Deepseek-V4-Flash,并输入以下内容:

基于以下文档先设计方案及技术选型,设计完成后找我确认,确认完成后在进行开发

## 项目背景

将面试相关的文档分类整理后放在一个目录中:

docs/
├── java/
│   ├── java基础/ 
│   │   ├── collection.md
│   ├── cli/       
│   └── web/       
├── ai/
│   ├── skills/      
│   ├── db/        
│   └── shared/    
├── README.md
├── CONTRIBUTING.md

现在我想做一个 Node 项目,需实现以下功能:

1. 按文件目录生成左侧文档结构树;
2. 每添加一篇 md 文件,通过 GitHub Pages 部署后可在页面查看;
3. 每篇文章头部都添加 YAML Front Matter,并据此在每篇文章头部渲染出一块区域,展示如 title、tags、category、slug 等配置信息;
4. Markdown 中包含 ```mathjax!、```sequence、```mermaid! 等语法的代码块,也需要支持渲染;
5. 基于 GitHub 实现评论功能(如果可以,希望增加阅读数统计)。
  • 第三步:生成代码,根据具体情况进行多轮对话调整

在对话框中选择技术选型及设计方案,确认后会进行代码生成。生成之后,根据实际效果进行多轮对话修正。

  • 第四步:推送到 GitHub,进行环境变量等一系列配置

  • 第五步:调试 GitHub Pages 构建,并查看页面

  • 第六步:让工具总结,生成 README

至此,整个项目完成了从想法到开发再到部署的全流程。

项目耗时

这个想法萌生于早上通勤的路上。到公司后,我便利用工作间隙开始了尝试。整个开发过程完全交给 AI,我只需要清晰地描述需求,并在它生成代码后进行验证和对话调整。

到下午下班时,项目已基本成型。晚上回家后,我又集中花了约 3 个小时进行细节调优、多轮对话修正以及 GitHub Pages 的部署配置。

总计耗时:白天零散的“摸鱼时间” + 晚上集中的 3 小时。从想法到可公网访问的完整项目上线,实际投入的净时间不到一天。

项目说明

以下将对项目的系统架构、核心功能、使用方法及部署方式做详细说明。

面试知识库 📖

面试文档知识库系统,支持自动扫描 Markdown 文档、渲染图表/公式/流程图,通过 GitHub Pages 一键部署。


一、系统架构

graph TD
    subgraph 源码
        A[docs/ *.md] --> B[scripts/build-manifest.js]
        B --> C[public/docs-manifest.json]
    end
    subgraph 前端 SPA
        D[index.html] --> E[src/main.jsx]
        E --> F[App.jsx]
        F --> G[Sidebar]
        F --> H[ArticleView]
        H --> I[MarkdownRenderer]
        I --> J[ChartBlock / MermaidBlock / CodeBlock]
        H --> K[Comments / PageViews]
    end
    C --> G
    A --> H

技术栈:

层 技术 用途
构建 Vite 5 开发服务器 + 生产构建
UI 框架 React 18 SPA 页面组件
路由 react-router-dom 6 HashRouter 页面切换
Markdown react-markdown 9 核心渲染引擎
数学公式 KaTeX + remark-math + rehype-katex LaTeX 公式渲染
图表 Recharts 饼图、柱状图、折线图等
流程图 Mermaid 流程图、时序图、状态图
文档扫描 gray-matter (Node) 构建时提取 YAML Front Matter
部署 GitHub Actions 自动构建并部署到 Pages

二、全部功能及用法

2.1 左侧文档树

构建时自动扫描 docs/ 目录生成文档树,按目录层级展示。支持展开/折叠和搜索。

效果: 页面加载后左侧显示文件树

📂 java
  📂 java基础
    📚 collection
  📂 cli
  📂 web
📂 ai
  📂 skills
    🤖 机器学习基础
📄 README
📄 CONTRIBUTING

用法: 只要在 docs/ 下放 .md 文件,构建时自动收录


2.2 YAML Front Matter 卡片

每篇 .md 文件头部用 --- 包裹的元信息,渲染为蓝色主题卡片。

效果:

╔═══════════════════════════════════════════╗
║  📚 Java集合框架详解                       ║
║  分类: Java/Java基础  📅 2024-01-15       ║
║  [Java] [集合] [面试]                      ║
║  全面梳理 Java 集合框架核心知识点...        ║
╚═══════════════════════════════════════════╝

写法:

---
title: Java集合框架详解
tags: [Java, 集合, 面试]
category: Java/Java基础
slug: java/java基础/collection
emoji: 📚
description: 完整的中文描述
created: 2024-01-15
updated: 2024-03-20
---

2.3 数学公式(KaTeX)

支持行内公式和块级公式。

效果:

行内:$E = mc^2$

块级:
$$ \int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi} $$

写法:

行内公式:$E = mc^2$

块级公式:
$$
\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}
$$

也支持 mathjax 代码块:

```mathjax
f(x) = \sum_{i=1}^{n} i^2
```

2.4 图表(Recharts)

支持 pie、bar、line、area、radar 五种图表。

效果: 彩色可交互图表,鼠标悬停显示数据

写法:

```chart
{
  "type": "pie",
  "title": "技术栈分布",
  "data": [
    { "name": "Java", "value": 40 },
    { "name": "Python", "value": 25 },
    { "name": "前端", "value": 20 }
  ]
}
```

各图表类型:

类型 说明 关键字段
pie 饼图/环形图 angleField, colorField
bar 柱状图 xField, yField
line 折线图 xField, yField
area 面积图 xField, yField
radar 雷达图 xField, yField

2.5 流程图/时序图(Mermaid)

效果:

graph TD
    A[添加文档] --> B[Git Push]
    B --> C[GitHub Actions]
    C --> D[部署 Pages]

写法:

```mermaid
graph TD
    A[添加文档] --> B[Git Push]
    B --> C[GitHub Actions]
    C --> D[部署 Pages]
```

时序图:

```sequence
participant A as 客户端
participant B as 服务端
A->>B: 请求
B-->>A: 响应
```

支持所有 Mermaid 类型:

类型 代码块语言 说明
流程图 mermaid graph TD / LR / BT
时序图 sequence sequenceDiagram
饼图 mermaid 内置 pie 语法
类图 mermaid classDiagram
甘特图 mermaid gantt
状态图 mermaid stateDiagram

2.6 代码块 + 复制按钮

所有代码块自动添加语言标签和复制按钮。

效果:

┌─ java ──────────────────── 📋 复制 ─┐
│                                     │
│  public class Hello {               │
│      public static void main(..)    │
│  }                                  │
│                                     │
└─────────────────────────────────────┘

点击复制按钮 → 自动复制到剪贴板,按钮变为 ✅ 已复制(1.8 秒后恢复)。

写法:

```java
public class Hello {
    public static void main(String[] args) {}
}
```

不写语言也自动渲染为代码块:

```
纯文本代码块
```

2.7 GitHub Alert 提示

5 种颜色不同的警报提示块。

效果:

[!NOTE]
蓝色提示,用于补充信息

[!TIP]
绿色提示,用于小技巧

[!IMPORTANT]
紫色提示,用于重要信息

[!WARNING]
橙色提示,用于警告

[!CAUTION]
红色提示,用于谨慎操作

写法:

> [!NOTE]
> 提示内容写在这里
类型 颜色 适用场景
NOTE 蓝 补充信息
TIP 绿 实用技巧
IMPORTANT 紫 关键信息
WARNING 橙 注意提醒
CAUTION 红 风险警告

2.8 表格(Pipe Table)

标准 GFM 表格语法。

效果: 带边框的格式化表格

算法 类型 优点
线性回归 回归 简单
决策树 分类 可视化

写法:

| 算法 | 类型 | 优点 |
|------|------|------|
| 线性回归 | 回归 | 简单 |
| 决策树 | 分类 | 可视化 |

2.9 阅读量统计

基于 GitHub Gist API 的跨设备阅读量计数器。

效果: 文章头部显示 👁️ N(每次浏览 +1)

启用步骤:

① 创建 Gist
访问 gist.github.com → 右上角 + → New gist:

  • 文件名:counts.json
  • 内容:{}
  • 选 Create secret gist
  • 创建后 URL 形如 https://gist.github.com/xiuji008/abc123,复制 Gist ID(最后一段 abc123)

② 生成 Token
访问 GitHub Settings → Tokens (classic) → Generate new token:

  • 只勾选 gist 权限
  • 生成后复制 Token

③ 填入配置

// src/utils/gistCounter.js
const GIST_ID = '你的GistID'
const GIST_TOKEN = 'ghp_xxxx (仅 gist 权限,不影响代码仓库)'

⚠️ Token 会打包到前端 JS,务必只勾选 gist 权限,定期更换更安全。


2.10 评论系统(giscus)

基于 GitHub Discussions 的评论区,无需 OAuth App,无 token 泄露风险。

效果: 文章底部展示 GitHub 风格的评论区,每篇文章独立讨论

启用步骤:

  1. 仓库 Settings → Features → 勾选 Discussions
  2. 访问 giscus App → Install → 选本仓库
  3. 访问 giscus.app 填入 xiuji008/xjdoc-interview 获取 ID
  4. 将 repoId、categoryId 填入:
// src/components/Comments.jsx
const GISCUS_CONFIG = {
   
  repo: 'xiuji008/xjdoc-interview',
  repoId: 'R_kgDOSoPcRg',
  category: 'Announcements',
  categoryId: 'DIC_kwDOSoPcRs4C94wU',
}
  • 使用 data-mapping="specific" + data-term={slug} 按文章独立分页
  • 支持 GitHub Reactions(👍❤️🎉 等)

三、项目目录结构

xjdoc-interview/
├── docs/                           # 📁 文档源文件
│   ├── java/
│   │   ├── java基础/collection.md
│   │   ├── cli/
│   │   └── web/
│   ├── ai/
│   │   ├── skills/
│   │   ├── db/
│   │   └── shared/
│   ├── README.md
│   └── CONTRIBUTING.md
├── public/
│   ├── _config.yml                 # GitHub Pages 配置
│   └── docs-manifest.json          # 构建时自动生成的文档清单
├── scripts/
│   └── build-manifest.js           # 扫描 docs/ 生成 manifest
├── src/
│   ├── main.jsx                    # React 入口
│   ├── App.jsx                     # 路由 + 布局
│   ├── App.css                     # 全局样式
│   ├── components/
│   │   ├── Sidebar.jsx             # 左侧文档树
│   │   ├── ArticleView.jsx         # 文章详情页
│   │   ├── ArticleHeader.jsx       # Front Matter 卡片
│   │   ├── MarkdownRenderer.jsx    # 统一渲染管线
│   │   ├── MermaidBlock.jsx        # Mermaid 图渲染
│   │   ├── ChartBlock.jsx          # Recharts 图表渲染
│   │   ├── CodeBlock (内联)        # 代码块 + 复制按钮
│   │   ├── PageViews.jsx           # 阅读量统计
│   │   ├── Comments.jsx            # giscus 评论
│   │   └── ErrorBoundary.jsx       # 错误边界
│   ├── hooks/
│   │   ├── useDocManifest.js       # 加载文档清单
│   │   └── useDocContent.js        # 加载 .md + 解析 Front Matter
│   └── utils/
│       └── gistCounter.js          # GitHub Gist 计数器
├── .github/workflows/deploy.yml    # GitHub Actions 自动部署
├── worker-counter.js               # Cloudflare Worker 备用方案
├── vite.config.js
├── package.json
└── index.html

四、快速开始

# 1. 安装依赖
npm install

# 2. 生成文档清单 + 启动开发服务器
npm run dev

# 3. 打开浏览器访问
open http://localhost:5173

# 4. 构建生产版本
npm run build

五、部署

推送 main 分支到 GitHub 后,.github/workflows/deploy.yml 自动执行:

  1. npm ci — 安装依赖
  2. npm run build — 生成 manifest + 构建 SPA
  3. 部署到 GitHub Pages

需要在仓库 Settings > Pages 中设置 Source 为 GitHub Actions。


六、添加新文档

---
title: 文档标题
tags: [标签1, 标签2]
category: 分类/子分类
slug: 路径/文件名(唯一标识)
emoji: 📝
description: 简短描述
---

将 .md 文件放入 docs/ 下对应目录 → 提交推送 → 自动部署上线。

写在最后

需要特别说明的是,这个项目只是一个知识载体,真正有价值的,是其中沉淀的内容。工具帮你降低了表达的门槛,但坚持每天更新知识内容、在使用中持续优化项目,才是这件事能否走远的关键。

AI 不会替代开发者,但它正在重新定义“开发者”的门槛。以前,一个想法到产品之间,隔着厚厚的编程语法、框架选型、环境配置等障碍。而现在,AI 像一位 7x24 小时在线的资深搭档,帮你把这些“脏活累活”快速落地。

重要的不再是你掌握多少语法,而是你是否有清晰的逻辑、能否准确地描述需求,以及是否愿意把自己的想法付诸实践。

希望我的这次分享能给你带来一些启发。如果你也有一个酝酿已久的想法,不妨现在就打开一个 AI 工具,让它帮你迈出第一步。

目录
相关文章
|
3月前
|
存储 人工智能 算法
告别无效刷屏!TrendRadar:最快30秒部署的开源热点助手,让你只看真正关心的新闻
TrendRadar 是一个轻量级、易部署的热点新闻聚合与推送工具。它能够从知乎、抖音、B站、微博、百度、华尔街见闻等11个主流平台抓取热搜榜单,然后根据你设定的关键词进行智能筛选,最终将你最关心的内容推送到手机或邮箱。
930 13
 告别无效刷屏!TrendRadar:最快30秒部署的开源热点助手,让你只看真正关心的新闻
|
3月前
|
人工智能 供应链 Cloud Native
2026中国B2B企业服务业GEO白皮书:从产业洞察到优化实践
78%的企业HR、法务、采购已通过AI筛选服务商。本白皮书覆盖法律服务、管理咨询、金融科技、人力资源、IT服务等10大核心赛道,通过DSS原则(语义深度、数据支持、权威来源),将过会率、交付周期、客户评价等转化为可验证的AI信任资产,助力专业服务机构实现AI获客。
784 2
|
3月前
|
机器学习/深度学习 数据采集 人工智能
水面5种垃圾目标检测数据集分享(适用于YOLO系列深度学习分类检测任务)
本数据集含8000+张真实水面图像,标注5类常见漂浮垃圾(瓶子、易拉罐、纸盒、纸张、塑料制品),采用YOLO格式,含训练/验证/测试集。适用于YOLO系列等目标检测模型训练,助力水环境智能监测与治理。(239字)
510 2
|
3月前
|
运维 小程序 数据可视化
小程序开发实测|踩坑无数!游戏陪玩小程序为什么一定要用第三方专业分账系统?
经过多项目实测验证,分账链是目前适配陪玩小程序最贴合、最稳妥的第三方专业分账解决方案。它不是通用型工具,而是针对性适配文娱陪玩、小程序撮合场景的垂直分账系统,兼顾了「低开发成本、全场景适配、合规兜底、高稳定性」四大核心优势。 对于想要快速上线、稳定运营、合规放量、降低运维成本的小程序开发团队,直接接入成熟的垂直专业分账系统,是性价比最高、踩坑最少的技术选型。
488 2
|
3月前
|
人工智能 供应链 机器人
2026中国B2B制造业GEO白皮书:从产业洞察到优化实践
生成式AI正在重构B2B制造业采购决策,89%买家使用AI辅助选型。本白皮书覆盖科技制造与传统制造80个细分行业,通过10大标杆案例(生物医药、集成电路、汽车零部件、新能源、环保、智能装备等)和DSS原则(语义深度、数据支持、权威来源),助您将技术参数、认证资质转化为AI信任资产,实现精准获客。
744 1
|
2月前
|
人工智能
告别排版噩梦:一个开源SKILL,让我彻底告别公众号排版的“噩梦”
**gzh-design-skill**,一个专门为公众号排版设计的 Skill,面向 AI Agent(如 Claude Code、Codex、Cursor 等)使用。 你写完 Markdown,它按你选的主题,生成样式**全内联**的 HTML——粘贴到公众号编辑器后**格式不丢、样式不掉**。自动编章节号、标关键词下划线、配引言卡与目录、处理代码块和图片、合并作者签名,并用校验脚本兜住公众号平台的各种坑。
643 1
告别排版噩梦:一个开源SKILL,让我彻底告别公众号排版的“噩梦”
|
3月前
|
人工智能 运维 监控
阿里云部署Hermes Agent完整教程 搭配Token Plan配置实操指南
随着AI智能体应用愈发普及,Hermes Agent凭借自进化学习、持久记忆、多工具协同、自主任务拆解等强大特性,成为科研分析、办公自动化、网页信息采集、项目管理等场景的热门选择。不同于普通对话机器人,Hermes能够自主规划工作流程,调用浏览器、代码解释器、文档读写等工具,完成长周期复杂任务,越使用越贴合个人工作习惯。
505 1
|
3月前
|
人工智能 文字识别 算法
出版社题库系统的开发
出版社题库系统将纸质教辅转化为结构化数字资产,支持多模态题型、智能组卷、三审三校及多端应用。涵盖编校入库、组卷引擎、师生端、版权运营四大模块,攻克公式识别、高并发等难点,赋能“一书一码”、B端授权与C端增值服务,助力教育出版数智化转型。(239字)
|
3月前
|
人工智能 JSON 自然语言处理
四种无向量RAG 方案实测:BM25、GraphRAG、Tree Search、Agent
本文对比四种无向量RAG方法:BM25(精准匹配标识符)、GraphRAG(多跳因果推理)、Tree Search(结构化文档导航)和Agentic Search(自主规划检索)。实测表明,各方法适用场景迥异,无银弹;生产系统应混合使用——向量召回+BM25纠偏+图谱/Agent处理复杂逻辑,以兼顾准确性、可解释性与合规性。
324 0
四种无向量RAG 方案实测:BM25、GraphRAG、Tree Search、Agent
|
2月前
|
存储 人工智能 API
差生文具多?我给自己改造了一款AI周计划工具
WeekToDo是一款免费开源的极简每周计划应用,核心理念就三个词:**极简、本地、周视图**。 它有这些特点: - **以周为单位**:不是日视图那种碎片化视角,而是让你从整周的高度规划时间 - **数据在本地**:所有任务存在浏览器或本地存储,不经过任何云端服务器 - **跨平台**:Web版、Windows、Mac、Linux全支持 - **功能刚刚好**:待办列表、子任务、拖拽排序、任务颜色、循环任务、Markdown支持
518 0
 差生文具多?我给自己改造了一款AI周计划工具

热门文章

最新文章