从想法到上线:我用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)

支持 piebarlinearearadar 五种图表。

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

写法:

```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. repoIdcategoryId 填入:
// 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 工具,让它帮你迈出第一步。

目录
相关文章
|
1天前
|
人工智能 JSON 自然语言处理
四种无向量RAG 方案实测:BM25、GraphRAG、Tree Search、Agent
本文对比四种无向量RAG方法:BM25(精准匹配标识符)、GraphRAG(多跳因果推理)、Tree Search(结构化文档导航)和Agentic Search(自主规划检索)。实测表明,各方法适用场景迥异,无银弹;生产系统应混合使用——向量召回+BM25纠偏+图谱/Agent处理复杂逻辑,以兼顾准确性、可解释性与合规性。
34 0
四种无向量RAG 方案实测:BM25、GraphRAG、Tree Search、Agent
|
1天前
|
人工智能 数据可视化 BI
AI 为什么会让企业部门越来越小?
本文解析AI如何驱动企业部门轻量化:技术上,AI智能体替代重复劳动,重塑人机协同分工;现实中,降本、提效、防固化倒逼组织精简;演进上,经历工具辅助→流程自动化→OPD单人单元三阶段。强调非全盘替代,而是“核心团队+轻量职能”的混合架构,并提供分步落地路径。
|
1天前
|
人工智能 文字识别 算法
出版社题库系统的开发
出版社题库系统将纸质教辅转化为结构化数字资产,支持多模态题型、智能组卷、三审三校及多端应用。涵盖编校入库、组卷引擎、师生端、版权运营四大模块,攻克公式识别、高并发等难点,赋能“一书一码”、B端授权与C端增值服务,助力教育出版数智化转型。(239字)
|
1天前
|
存储 缓存 监控
《从零构建OpenClaw Docker镜像:高效部署与无缝迁移》
本文针对经典复古游戏引擎在现代计算环境中依赖复杂、配置不一致、跨平台迁移困难的痛点,系统阐述了OpenClaw的Docker容器化完整实践方案。详细介绍了镜像分层构建策略、多阶段编译优化、游戏资源与应用分离、一键部署脚本设计、数据持久化方案、跨架构镜像构建及图形性能优化等核心技术细节。该方案彻底解决了环境依赖问题,实现了一次构建、无缝跨环境迁移,大幅降低了OpenClaw的使用门槛。
|
1天前
|
安全 测试技术 API
筑牢云上办公防线:禁用USB网络共享策略的统一部署与技术实现
USB网络共享(如手机USB热点)正成企业安全“暗道”:绕过防火墙、DLP与审计,引发数据泄露与内网入侵。本文剖析其四大风险,指出“禁用所有USB”不可行,提出基于阿里云无影API的精准管控方案——按VID/PID识别并阻断RNDIS/CDC-NCM类设备,保留UKey、打印机等合法外设,实现安全与效率平衡。(239字)
|
1天前
|
人工智能 运维 供应链
OPD 会取代传统组织架构吗?
本文探讨AI时代OPD(一人部门)与传统组织架构的关系,指出二者非替代而是互补:传统架构支撑实体生产、大型协同与战略管控;OPD则优化标准化职能,提升响应效率。结合行业实践,分析适用边界、发展趋势与企业分层落地策略,助力管理者科学布局、职场人精准适配。
从技术思维看 "包包心":为什么包容是技术团队最重要的文化?
“包包心”(Tech Inclusive Culture)指技术领域开放包容的文化理念:接纳多元技术栈、解决方案与思维方式,尊重差异、鼓励试错、赋能人才。它提升团队创新力、兼容性与凝聚力,是应对快速迭代时代的关键技术软实力。(239字)
|
1天前
|
人工智能 运维 监控
阿里云部署Hermes Agent完整教程 搭配Token Plan配置实操指南
随着AI智能体应用愈发普及,Hermes Agent凭借自进化学习、持久记忆、多工具协同、自主任务拆解等强大特性,成为科研分析、办公自动化、网页信息采集、项目管理等场景的热门选择。不同于普通对话机器人,Hermes能够自主规划工作流程,调用浏览器、代码解释器、文档读写等工具,完成长周期复杂任务,越使用越贴合个人工作习惯。
40 1
|
1天前
|
存储 人工智能 自然语言处理
AI 智能体如何帮助企业实现 OPD?
本文详解AI智能体如何支撑OPD(一人部门)落地:以“人机分工”重构岗位,覆盖流程自动化、内容生成、客户服务、数据报表等五大场景,提供分步实施路径与避坑指南,助力企业轻量化转型与从业者能力升级。
|
19天前
|
网络安全 开发工具 git
Gogs: 打造属于你自己的轻量级 Git 服务
Gogs 是一个小而美的 Git 服务解决方案。无论你是想在个人服务器上搭建私有的代码仓库,还是为小团队提供一个轻量级的代码协作平台,Gogs 都是一个值得考虑的选择。
124 8
Gogs: 打造属于你自己的轻量级 Git 服务