Skip to content

Latest commit

 

History

History
181 lines (144 loc) · 5.86 KB

File metadata and controls

181 lines (144 loc) · 5.86 KB

NetLearner — 考纲驱动 · AI 动态出题

开源 CCNA/CCNP 备考平台。基于 Cisco 官方 Exam Topics,AI 实时生成试题,零版权风险。 纯前端,本地优先,每人拥有自己的数据。


解决什么问题

传统刷题平台三大问题:

问题 NetLearner 的解法
题库版权风险 无静态题库,AI 基于官方考纲出题
数据归属平台 数据存在用户浏览器,不经过任何服务器
考纲更新滞后 更新大纲 PDF → 重新出题 → 立即生效

核心功能

水平测试  ─→  学习计划  ─→  模拟考试  ─→  错题本
  │                                             │
  └─────────────── 循环提升 ←───────────────────┘
功能 说明
水平测试 10 题快速摸底 → 评定等级(初级/中级/高级) → 生成学习计划
模拟考试 CCNA 60题 / CCNP ENCOR 60题,120分钟,按官方权重配比出题
错题本 自动收录、按域筛选、掌握度标记、错题重练
学习计划 等级对应 12/8/4 周计划,按薄弱域调整权重
数据管理 导出 JSON 备份 / 导入恢复 / 一键清除

考试规格

CCNA 200-301

项目
时长 120 分钟
题量 ~100 题(模拟卷 60 题)
通过分 825/1000
题型 单选、多选、拖拽、模拟实验
知识域 权重 模拟题量
Network Fundamentals 20% 12
Network Access 20% 12
IP Connectivity 25% 15
IP Services 10% 6
Security Fundamentals 15% 9
Automation 10% 6
合计 100% 60

CCNP ENCOR 350-401 v1.2

项目
时长 120 分钟
题量 ~100 题(模拟卷 60 题)
通过分 825/1000
题型 单选、多选、拖拽、模拟实验
知识域 权重 模拟题量
Architecture 15% 9
Virtualization 10% 6
Infrastructure 30% 18
Network Assurance 10% 6
Security 20% 12
Automation & AI 15% 9
合计 100% 60

技术架构

┌─────────────────────────────────────────────┐
│              浏览器 (Chrome/Edge/Firefox)      │
│                                             │
│  index.html (SPA, 路由内嵌)                  │
│    ├── main.css (设计系统)                    │
│    ├── router.js (哈希路由)                   │
│    ├── exam-engine.js (考试状态机)             │
│    ├── storage.js (L1 localStorage + L2 JSON) │
│    ├── wrong-answer-service.js (错题本)       │
│    ├── planner-generator.js (学习计划)         │
│    └── app.js (主逻辑)                        │
└──────────────────────┬──────────────────────┘
                       │ fetch (带缓存爆破)
                       ▼
┌─────────────────────────────────────────────┐
│             node server.js :8080              │
│  Cache-Control: no-store (所有浏览器不缓存)   │
│                                              │
│  static/                                     │
│    index.html, assets/*.css, assets/*.js      │
│    questions/index.json (题库元数据)           │
│    questions/generated/*.json (AI 生成题库)   │
└─────────────────────────────────────────────┘

防缓存策略(三层):

  1. 服务器返回 Cache-Control: no-store(所有浏览器标准)
  2. fetch URL 追加 ?t=版本号(版本号写死在 app.js 配置区)
  3. 使用内置 Node.js 服务器,无第三方依赖,只有一个进程

启动方式

# 唯一启动方式(没有第二种)
node server.js

# PC 浏览器打开
http://localhost:8080

# 手机打开(同一 WiFi)
# 1. 查电脑 IP:ipconfig | findstr "IPv4"
# 2. 手机浏览器访问 http://<电脑IP>:8080

📱 移动端支持:手机与电脑连同一 WiFi 即可访问。 无需部署到服务器,无需 HTTPS,完美支持通勤刷题。 详细教程见 使用教程.md


目录结构

NetLearner/
├── server.js              # 唯一服务器(内置,零依赖)
├── index.html             # SPA 主页面
├── assets/
│   ├── css/
│   │   ├── main.css       # 设计系统
│   │   └── responsive.css # 响应式
│   └── js/
│       ├── app.js         # 应用主逻辑
│       ├── router.js      # 哈希路由
│       ├── storage.js     # 存储层
│       ├── exam-engine.js # 考试引擎
│       ├── wrong-answer-service.js
│       └── planner-generator.js
├── questions/
│   ├── index.json         # 题库元数据
│   └── generated/         # AI 生成的题库
└── plugin-forge/          # 发布用 skill

数据隐私

🔒 你的数据在你自己的浏览器
  • localStorage 存储,不清除就不丢失
  • 导出 JSON = 完整备份,可导入恢复
  • 没有任何数据经过服务器
  • 不需要注册账号

出题流程

1. 下载 Cisco 官方 Exam Topics PDF
2. 运行 Claude Code → 执行 ccna-question-generator skill
3. 输出 JSON → 放入 questions/generated/
4. 验证 → node plugin-forge/skills/ccna-question-generator/scripts/validate-questions.js
5. 提交 → GitHub Pages 自动部署