PROJECT

AI Career Assistant

JobPilot

本地优先的 AI 求职桌面应用,聚焦简历编写、AI 辅助评审、JD 匹配、模拟面试和本地资料管理。下载安装即可用,无需自建服务端。

  • Tauri 2
  • React
  • TypeScript
  • AI

Why I Built It

求职材料不该先上传到别人的服务器,再换来一份模板和一段聊天。JobPilot 把简历编写、JD 匹配、模拟面试和资料管理收进本地工作台:数据留在本机,下载安装即可用,不必自建服务端。

What It Does

覆盖本地求职工作台的核心闭环:

  • AI 简历生成、润色、语法检查与 ATS 检查
  • JD 匹配与求职信
  • 模拟面试、回答评分、薄弱点分析与训练计划
  • JSON / Markdown / PDF / 图片导入,扫描件走多模态识别
  • PDF / HTML / Markdown / JSON 导出,支持一键脱敏
  • 50+ 简历模板,支持模块拖拽与行内编辑
  • 可安装的 Skill 能力包,覆盖对话、面试官人设、翻译等场景
  • 加密 WebDAV 同步,可备份到 123云盘、坚果云、Nextcloud

AI Features

AI 接到具体任务上,而不是停在聊天窗口。简历编辑走精确 tool calling,按建议逐条替换文本,而不是整份覆盖。扫描 PDF 走多模态识别,普通 PDF 走解析;模拟面试可按 JD 和岗位生成场次,并结合 Skill 人设复盘。

Technical Architecture

桌面壳用 Tauri 2 / Rust,界面是 Next.js 16 / React 19 / TypeScript 5,样式走 Tailwind 4 与 shadcn。AI 层用 Vercel AI SDK;本地数据在 SQLite,密钥进系统 Keyring,可选加密 WebDAV 同步。支持 Windows、macOS Apple Silicon 与 Intel Mac。

Key Technical Decisions

选择本地优先:简历、面试记录和 API Key 默认留在本机,而不是先上传到在线简历平台。

选择 Tauri 而不是纯 Web:本地文件、系统钥匙串、离线和安装包更新更适合桌面端。

选择精确文本替换,而不是整份简历重写,让 AI 修改可审查、可回退。

用加密 WebDAV 做可选同步,避免把数据锁进单一云厂商。

Built with Tauri

用 Web 技术做界面,用系统 WebView 跑起来,体积和系统集成比传统 Electron 路线更克制。Windows 与 macOS 安装包一起发,应用内可检查更新。

AI Coding Workflow

开发过程把 AI Coding 当作工程工具:用来落地功能、迭代界面和接入模型,而不是只用来问答。

Challenges & Solutions

简历来源很杂:JSON、Markdown、普通 PDF、扫描件和图片。按类型分流后,再统一进入编辑与模板流程。导出时提供脱敏开关,处理姓名、手机号、邮箱、公司、学校和私人链接。Skill 人设与内置面试官解耦,面试流程可以按场景扩展,而不把能力写死在应用里。

Technical Architecture

  1. 客户端 · Tauri 2 / Rust 桌面壳
  2. 界面层 · Next.js 16 / React 19 / TypeScript 5
  3. AI · Vercel AI SDK / 精确 tool calling / Skill 能力包
  4. 数据层 · SQLite + OS Keyring / 加密 WebDAV

GitHub

github.com/jlifeng/JobPilot