Releases: twwch/JadeAI
v0.3.4
feat(v0.3.4): 主题色系统与配色切换
- 引入语义化 --brand-* CSS token,下线全站 60+ 文件硬编码 pink-*
- 用户菜单新增主题色切换器:薄荷(默认)/ 经典蓝 / 玫粉
- 新增 BrandProvider + SSR 防闪烁 inline script,老用户 localStorage
值(boss/jade)自动迁移至新命名(mint/blue) - tailwind-merge 注册 brand color group,修复 bg-brand 被 Button
默认 variant bg-primary 覆盖的冲突 - 简历主题编辑器新增「薄荷」预设
- 导出通道(PDF/HTML/DOCX)统一读取 src/lib/brand-constants.ts
v0.3.3
feat: 移动端体验优化 + 面试报告生成稳定性提升
- 落地页 Header:重新设计移动端抽屉菜单(Logo 区 + 分组导航 + 底部 CTA)
- 落地页 Header:GitHub Star 数显示完整数字(带千分位)
- 新建简历弹窗:模板网格手机端 2 列、桌面端 5 列
- AI 聊天气泡:手机端(<640px)窗口尺寸自适应缩小
- 编辑器工具栏:手机端紧凑布局,隐藏次要文字与分隔线
- 面试报告 schema:全字段 lenient + 默认值,容忍模型部分输出
- extract-json:剥离 推理块(兼容 qwen3 / deepseek-r1)
- extract-json:常见字段别名归一化(comprehensiveScore → overallScore 等)
- 面试报告 prompt:强约束 camelCase 字段名,杜绝模型自创键名
v0.3.2
fix: 移除所有 NEXT_PUBLIC_* 构建时变量,改为运行时环境变量 (v0.3.2)
NEXT_PUBLIC_* 变量在 Next.js 构建时内联到 JS bundle,Docker 部署时通过
docker-compose 设置无法生效。
- AUTH_ENABLED: 通过 RuntimeConfigProvider 从服务端 layout 注入客户端 Context
- APP_NAME: 服务端 layout.tsx 直接读取 process.env.APP_NAME
- DEFAULT_LOCALE: i18n/config.ts 读取 process.env.DEFAULT_LOCALE
- 移除未使用的 NEXT_PUBLIC_APP_URL
- 同步更新 .env.example、docker-compose、README、ARCHITECTURE 文档
v0.3.1
fix: 将 NEXT_PUBLIC_AUTH_ENABLED 改为运行时环境变量 AUTH_ENABLED (v0.3.1)
NEXT_PUBLIC_AUTH_ENABLED 作为 Next.js 构建时变量,在 Docker 镜像中被内联固化,
导致运行时通过 docker-compose 设置无效,Google 登录后始终显示 Anonymous User。
改为通过 RuntimeConfigProvider 在服务端 layout 读取 AUTH_ENABLED 环境变量,
经 React Context 传递给客户端组件,实现同一镜像通过配置控制是否开启 OAuth。
v0.3.0
feat: 优化面试模拟提示词与修复多项问题 (v0.3.0)
- 重构面试系统提示词为结构化格式,中英双语独立分支
- 丰富 6 位面试官人设(bio/style/personality/focusAreas)
- 重写面试报告生成提示词,增加评分标准和评估框架
- 优化报告 schema 字段描述,提升 AI 输出质量
- 修复面试页面设置按钮无效(缺少 SettingsDialog)
- 修复准备中的面试无进入按钮(preparing 状态未渲染)
- 修复轮次过渡 banner 小屏溢出
- 修复 DashScope 报错:prompt 中缺少 json 关键字
Co-Authored-By: Claude Opus 4.6 (1M context) noreply@anthropic.com
v0.2.9
fix: 防止 AI 返回无效 JSON 时页面崩溃 (v0.2.9)
- resume-preview: sections 为空时兜底为空数组,保护全部 50 个模板
- resume-store: setResume 中 sections 增加 || [] 防御
- 所有模板: content 为空时 return null,content.items 改为 content?.items
v0.2.8
feat: 新增职位描述模拟面试功能 (v0.2.8)
新功能:基于职位描述的AI模拟面试。
用户可选择多种面试官类型(HR、技术、情景、行为、项目深挖、主管或自定义),AI将进行循序渐进的面试轮次,提出贴近真实场景、人性化的问题。
亮点:
- 6种预设面试官角色,各具独特个性(中/英双语)
- 支持自定义面试官,可配置考察重点
- AI自适应追问,实现流式对话
- 面试控制功能:跳过、请求提示、标记待复查、暂停
- 可点击的进度条,方便回顾已完成轮次
- 详细报告:每题评分、能力雷达图、改进计划及学习资源、历史对比
- 通过Puppeteer导出PDF(与简历模块一致)
- 支持Markdown导出
- 完整国际化支持(中英双语)
v0.2.7
feat: 简历多分享链接 + 标签功能
- 新建 resume_shares 表(SQLite + PostgreSQL),支持同一简历创建多个分享链接
- 每个分享链接可设置标签(如公司名称)、密码保护、启用/停用
- 新增 share.repository 及 API 路由(CRUD + 浏览计数)
- 公开访问接口优先查 resume_shares,fallback 旧 resumes.shareToken
- ShareDialog 重构为多链接管理界面,支持内联编辑标签、复制链接、停用/删除
- 提取 hashPassword/generateShareToken/getShareUrl 到 src/lib/utils/share.ts
- 更新中英文 i18n 翻译
v0.2.6
feat: PDF 导出体系重构 & 错误处理增强
- PDF 生成器重构:优化分页策略,sidebar-dark 模板使用 slice/clone
混合模式避免空白页,BACKGROUND 模板支持子元素 padding 缩减 - 替换 CDN Tailwind 为预构建 export-tailwind-css,添加 prebuild 脚本
- 修复 Tailwind v4 rounded-full 在 Chromium PDF 中的兼容问题(9999px fallback)
- 头像样式导出支持 circle/oneInch 两种模式
- 主题 CSS 统一:div 加入字体/行高选择器,heading 补全 line-height
- 预览字体添加 Noto Sans SC,CSS 变量补全
- 50+ 模板个人信息字段顺序调整(政治面貌提前于性别),
linkedin/github 从联系行分离为独立展示 - AI 聊天面板增加 API 错误 toast 提示
- 编辑器页面捕获 unhandledrejection 防止页面崩溃
- 新增 error.tsx / global-error.tsx 错误边界
v0.2.5
feat: 个人信息字段扩展 & 教育背景学位专业连接符修复
- 新增 9 个个人信息字段:年龄/性别/政治面貌/民族/籍贯/婚姻状况/工作年限/最高学历/微信
- 性别/民族/政治面貌/婚姻状况/最高学历使用可清除下拉选择组件
- 新增 EditableSelect 组件,支持清除已选值
- 修复教育背景 degree in field 硬编码问题,统一使用 - 连接符
- 修复部分模板 LinkedIn/GitHub URL 作为纯文本渲染导致的 -in 前缀问题
- 50 个预览模板 + 50 个导出模板 + DOCX/纯文本导出全部适配
- AI 解析 schema、字段映射、中英文翻译同步更新