3447dbd4ee6c5c246ee6f0482260397a1471020d
Deploy Examination / deploy (push) Successful in 14s
🎯 CS 知识应试强化系统
零依赖、纯前端的计算机科学知识应试训练平台。题目以 JSON 文件存储于 Git 仓库,通过单文件 SPA 提供交互式刷题体验。
快速开始
cd /home/wonder/code/examination
python3 -m http.server 8080
# 浏览器打开 http://localhost:8080
无需安装任何依赖,无需构建步骤。
项目结构
├── index.html # 单文件 SPA(HTML + CSS + JS,约 1100 行)
├── topics/ # 题目数据
│ ├── index.json # 主题索引(前端启动时加载)
│ └── qunar-ai-fullstack/ # 题目分组:去哪儿 AI 全栈面试
│ ├── gc-jvm/ # GC / JVM / 三色标记
│ ├── ai-structured-output/ # AI 结构化输出 / Agent 架构
│ ├── ai-memory/ # Agent 记忆管理 / 冲突消解
│ ├── ai-hallucination/ # AI 幻觉 / 评估体系 / 标准
│ └── ai-tooling/ # AI 工具选型 / Harness / 综合
├── schema/ # 数据规范
│ ├── question.schema.json # JSON Schema(题目校验)
│ ├── prompt-template.md # LLM 生成提示词模板
│ └── templates/ # 各题型示例模板(7 种)
├── Dockerfile # nginx:alpine 静态站点容器
└── .gitea/workflows/deploy.yml # Gitea Actions 自动部署流水线
每个子主题目录包含:
- meta.json — 主题元信息与题目文件列表
- fill_blank.json — 填空题
- single_choice.json — 单选题
支持的题型
| 题型 | 代码 | 交互方式 |
|---|---|---|
| 单选题 | sc |
点击选项,即时判定 |
| 多选题 | mc |
勾选多个选项 |
| 判断题 | tf |
对 / 错 二选一 |
| 填空题 | fb |
内联文本输入,支持模糊匹配 |
| 简答题 | sa |
开放式作答,关键词自检 |
| 代码阅读 | cr |
代码块 + 嵌套子问题 |
| 场景分析 | sn |
场景描述 + 嵌套子问题 |
当前题目
| 子主题 | 题目数 | 覆盖内容 |
|---|---|---|
| GC / JVM / 三色标记 | 20 | JVM 堆模型、GC 算法、三色标记、CMS/G1/ZGC、GC Roots |
| AI 结构化输出 / Agent 架构 | 20 | 结构化输出方法、ReAct/Reflexion 模式、约束解码 |
| Agent 记忆管理 / 冲突消解 | 20 | 记忆分层架构、淘汰策略、冲突检测与消解 |
| AI 幻觉 / 评估体系 / 标准 | 20 | 幻觉分类、Critic 架构、Context Engineering、RAG |
| AI 工具选型 / Harness / 综合 | 20 | 工具选型、Harness 架构、可靠性工程、效率分析 |
共 5 个子主题,100 道题目(每主题 10 填空 + 10 单选)。
添加新题目
- 在
topics/{group-slug}/下创建{topic-slug}/目录 - 创建
meta.json(参考已有主题) - 按题型创建 JSON 文件(参考
schema/templates/) - 更新
topics/index.json - 刷新页面即可
使用 LLM 生成题目
每个题目卡片右上角有 📋 复制提示词 按钮,可将题目格式化为提示词复制到剪贴板,粘贴到任意 AI 工具获取解析。
批量生成参考 schema/prompt-template.md 中的提示词模板,支持一次生成多个题型。
导入题目
在页面侧边栏点击 📥 导入题目,可粘贴 JSON 或上传 .json 文件临时导入(仅当前会话有效)。
部署
Docker
docker build -t examination-site .
docker run -d -p 8080:80 examination-site
Gitea Actions(自动)
推送到 main 分支自动触发部署流水线,构建镜像并启动容器。
本地开发
任意静态文件服务器即可,无需 Node.js 或构建工具:
python3 -m http.server 8080
# 或
npx serve .
设计原则
- 零依赖 — 纯 HTML + CSS + JS,无框架、无构建工具、无 npm
- 数据即代码 — 题目以 JSON 文件存储于 Git,版本可追溯
- 单文件应用 — 整个前端在一个
index.html中,便于部署和分发 - Meta/题目分离 —
meta.json稳定不变,题目文件按题型拆分,支持并行生成无冲突
Description
Languages
HTML
99.9%
Dockerfile
0.1%