面试陪跑工作台 - 简历管理、投递追踪、学习准备、面试复盘一站式工具
Find a file
workbuddy001 13b780d335 refactor: 单文件拆分为模块化结构,便于维护与二次开发
拆分方案:
- index.html 仅保留页面结构与资源引用
- css/ 拆为 base(变量布局) + components(通用组件) + responsive(移动端适配)
- js/core/ 拆为 utils(工具) + storage(数据层) + modal(模态框)
- js/modules/ 按业务拆分 7 个模块 + constants(常量)
- js/nav.js 统一导航与 refreshAll() 刷新入口
- js/app.js 初始化入口

架构约束:
- 脚本按依赖顺序加载: utils->storage->modal->nav->constants->modules->app
- 渲染函数严禁互调,统一由 Nav.refreshAll() 调度,避免递归环
- 新增模块只需新建文件+注册即可

功能增强:
- 初始化预渲染全部页面,切换立即可见
- 新增示例数据(含逾期项)与载入示例/清空数据入口
- 仪表盘新增今天要处理区,聚合逾期任务/临近面试/待跟进投递

文档:
- README 补充模块划分与架构约定
- deployment.md 新增部署速查卡(环境/配置项/待提供信息/最短命令)
  并强调必须整目录部署(含 css/ js/),遗漏会白屏
2026-10-09 13:02:39 +08:00
assets feat: 初始化面试陪跑工作台 2026-10-09 12:44:12 +08:00
css refactor: 单文件拆分为模块化结构,便于维护与二次开发 2026-10-09 13:02:39 +08:00
docs refactor: 单文件拆分为模块化结构,便于维护与二次开发 2026-10-09 13:02:39 +08:00
js refactor: 单文件拆分为模块化结构,便于维护与二次开发 2026-10-09 13:02:39 +08:00
.gitignore feat: 初始化面试陪跑工作台 2026-10-09 12:44:12 +08:00
index.html refactor: 单文件拆分为模块化结构,便于维护与二次开发 2026-10-09 13:02:39 +08:00
README.md refactor: 单文件拆分为模块化结构,便于维护与二次开发 2026-10-09 13:02:39 +08:00

面试陪跑工作台

帮助求职者系统化管理求职面试全流程的 Web 应用,涵盖简历管理、投递追踪、学习准备、面试日程、复盘笔记、目标公司库六大模块。

功能模块

核心模块(需求侧)

模块 说明
简历管理 创建维护多份简历版本,每份标注「适用方向」「版本号」「文件名」,并统计各版本被用于多少次投递
投递追踪 记录公司、岗位、使用的简历版本、渠道、投递日期、反馈状态(已投递/已查看/笔试/面试中/已通过/被拒),支持按状态、简历版本、关键词多维筛选
学习准备 面试知识点学习任务管理,含分类、优先级、截止日期、完成进度条,逾期自动标红置顶

拓展模块(主动补充)

模块 说明
面试日程 面试时间/轮次/类型/地点/面试官记录,今日面试高亮,倒计时提醒
面试复盘 自评分(1-5 星)、做得好的、需要改进的、被问题目、其他笔记,形成可复用的应答素材库
目标公司库 意向公司的行业、地点、目标岗位、期望薪资、优先级、官网、备注,投递时可自动补全

辅助功能

  • 仪表盘总览:投递漏斗(投递→已查看→笔试→面试→Offer)、学习进度、关键指标卡片
  • 今天要处理:自动聚合逾期学习任务、3 天内截止任务、临近面试、待跟进投递,红色标注 + 一键处理
  • 数据导入导出:JSON 备份与恢复,防止清缓存丢数据
  • 响应式设计:PC 侧边栏导航 / 移动端底部 Tab,手机浏览器可添加到桌面当 APP 用

技术栈

  • 原生 HTML + CSS + JavaScript,零外部依赖(无框架、无 CDN、无图表库)
  • 数据存浏览器 localStorage
  • 图表(漏斗图、进度条)为纯 CSS 手写,图标为内联 SVG
  • 无需构建步骤,部署即静态文件

项目结构(模块化,便于维护)

interview-coach/
├── index.html              # 页面结构入口(仅 HTML + 资源引用)
├── css/
│   ├── base.css            # 变量、重置、布局、侧边栏、移动端导航
│   ├── components.css      # 按钮/卡片/表单/表格/模态框/Badge/进度条/漏斗图
│   └── responsive.css      # 响应式适配(<768px 移动端规则)
├── js/
│   ├── core/
│   │   ├── utils.js        # 工具函数(日期、转义、Toast、下载)
│   │   ├── storage.js      # 数据层(localStorage 读写、示例数据、导入导出)
│   │   └── modal.js        # 模态框系统(含二次确认)
│   ├── modules/
│   │   ├── constants.js    # 业务常量(状态、渠道、分类、优先级)
│   │   ├── dashboard.js    # 仪表盘
│   │   ├── resume.js       # 简历管理
│   │   ├── application.js  # 投递追踪
│   │   ├── study.js        # 学习准备
│   │   ├── schedule.js     # 面试日程
│   │   ├── review.js       # 面试复盘
│   │   └── company.js      # 目标公司
│   ├── nav.js              # 导航 + 统一刷新入口 refreshAll()
│   └── app.js              # 初始化入口(最后加载)
├── docs/
│   └── deployment.md       # 部署文档
├── README.md
└── assets/                 # 静态资源预留目录

架构约定

  1. 脚本加载顺序有依赖,在 index.html 底部按固定顺序引入,勿随意调整: utils → storage → modal → nav → constants → 业务模块 → app
  2. 统一刷新入口:所有数据变更后调用 App.Nav.refreshAll(),由它按序刷新筛选器、仪表盘、当前页。 渲染函数之间严禁互调(避免递归环),这是硬性架构约束。
  3. 新增模块只需:在 js/modules/ 新建文件 → 在 index.html 加 <script> → 在 app.js 的 renderAllPages() 和 Nav.register() 中注册。

快速开始

本地直接双击 index.html 即可使用(无需服务器)。 如需部署到服务器,见 docs/deployment.md。

远程仓库