wonder df63692a18
Deploy Examination / deploy (push) Successful in 31s
feat: add 180 questions (90 sc + 90 fb) for networking subtopics
Cover 9 subtopics from the computer networking documentation:
- http-handshake: TCP/TLS/HTTP2/HTTP3 handshakes
- http-connection-cost: connection resource overhead & million concurrency
- connection-pooling: pool reuse, HTTP/1.1 vs HTTP/2
- http-keepalive: Keep-Alive principle, head-of-line blocking
- keepalive-scenarios: when to enable/disable Keep-Alive
- domain-sharding: HTTP/1.1 hack, HTTP/2 obsolescence
- cdn: edge nodes, caching, DDoS protection
- cors: same-origin policy, preflight requests
- go-build-strip: -s -w flags, binary size optimization
2026-09-02 21:33:09 +08:00

🎯 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 单选)。

添加新题目

  1. 在 topics/{group-slug}/ 下创建 {topic-slug}/ 目录
  2. 创建 meta.json(参考已有主题)
  3. 按题型创建 JSON 文件(参考 schema/templates/)
  4. 更新 topics/index.json
  5. 刷新页面即可

使用 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 稳定不变,题目文件按题型拆分,支持并行生成无冲突
S
Description
No description provided
Readme 866 KiB
Languages
HTML 99.9%
Dockerfile 0.1%