Commit Graph
72 Commits
Author SHA1 Message Date
admin f42b7cf74e merge: 合并 v0.1 版本显示到 dev 2026-10-20 15:07:05 +08:00
admin 9985f7c81a feat(version): 显示应用版本号 2026-10-20 15:06:54 +08:00
admin 646d75c318 merge: 补充 Webhook 健康检查配置 2026-10-20 14:24:27 +08:00
admin f5ffea6eb0 merge: 发布 Webhook 健康检查配置 2026-10-20 14:24:27 +08:00
admin d5456fae6b docs(deploy): 补充 Webhook 健康检查转发 2026-10-20 14:24:20 +08:00
admin 7ba7968047 merge: 合并 GitHub Webhook 部署到 master 2026-10-20 14:23:46 +08:00
admin 58a3335809 merge: 合并 GitHub Webhook 部署到 dev 2026-10-20 14:23:39 +08:00
admin 469630e7da ci(deploy): 改为 GitHub Webhook 触发部署 2026-10-20 14:23:31 +08:00
admin 69bfe3ce0e style: 格式化 CSS、JS 和 HTML 代码 2026-09-22 09:31:55 +08:00
admin 40b00a8b40 feat(shelf): 新增书架分页展示与排序选择 2026-09-21 22:25:11 +08:00
admin 58437b3acf merge: 合并 ICP 备案页脚到 master 2026-09-21 18:14:16 +08:00
admin bbed5a5b98 merge: 合并 ICP 备案页脚到 dev 2026-09-21 18:14:05 +08:00
admin fb0cf30086 feat(footer): 展示网站 ICP 备案信息 2026-09-21 18:13:34 +08:00
admin c220dcad7a merge: 合并登录权限到 master 2026-09-21 17:47:36 +08:00
admin 20651f275b merge: 合并登录权限到 dev 2026-09-21 17:47:20 +08:00
admin 810b52a051 feat(auth): 增加登录验证和五天会话 2026-09-21 17:46:43 +08:00
admin c82ef4f06e chore(release): 合并 dev 并启用 master 部署 2026-09-14 16:12:06 +08:00
admin ecd16bcefc ci(deploy): 合并 master 单分支部署配置 2026-09-14 16:09:47 +08:00
admin 8171705c5f ci(deploy): 仅允许 master 自动部署 2026-09-14 16:09:02 +08:00
admin 77e05998a5 docs(maintenance): 合并日常排障文档 2026-09-14 15:59:57 +08:00
admin df4c3f86f0 docs(maintenance): 记录端口与证书排障 2026-09-14 15:59:27 +08:00
admin d3ed683652 fix(api): 合并接口兼容热修复 2026-09-14 15:41:59 +08:00
admin 30ee66cef5 fix(api): 兼容部署过渡期接口路径 2026-09-14 15:41:09 +08:00
admin 5cf98c0c23 refactor(api): 合并接口命名清理 2026-09-14 15:36:33 +08:00
admin dcf4cb0719 refactor(api): 去除代码版本命名 2026-09-14 15:35:53 +08:00
admin 4d706c97a1 chore(release): 合并 dev 至 1.1 v1.1 2026-09-12 17:33:28 +08:00
admin bbc4bdd140 ci(deploy): 添加 dev 自动部署脚本 2026-09-12 17:24:36 +08:00
admin e5d1b7fa42 merge: 合并阅读目标持久化与紧凑布局 2026-09-12 17:17:15 +08:00
admin 094e1aca3d feat(reading-goals): 持久化阅读目标并收紧看板布局 2026-09-12 17:16:40 +08:00
admin 61d3951905 feat(discovery): 完善书籍搜索推荐与日志记录 2026-09-12 08:39:02 +08:00
admin aee8c58b04 chore(config): 切换项目数据源到远程 MySQL 2026-09-12 08:39:02 +08:00
admin d33601c987 fix(discovery): 修复真实书籍封面显示 2026-09-12 08:38:58 +08:00
admin db8d5fc391 fix(server): 修复启动脚本端口检测与打印 2026-09-12 08:38:30 +08:00
admin a1f54e765e Merge remote-tracking branch 'origin/master' into dev
# Conflicts:
#	.gitignore
#	app.py
#	static/js/app.js
2026-09-11 18:25:03 +08:00
admin 8d2f8f521f Merge branch 'codex/weread-dashboard-design' into dev 2026-09-11 18:22:33 +08:00
admin 87367e237a Merge branch 'feat/v2-real-data' into dev
v2 看板前端接入真实微信读书数据接口。

包含:
- feat(api): 新增 /api/v2/* 数据接口层(独立 Blueprint,v1 接口零改动)
- feat(web): 前端样式完全沿用 2.0 设计稿,仅替换数据来源为真实接口
- chore(legacy): 归档 v1 前端至 legacy/v1
- chore: 新增 start_dashboard.sh 启动脚本
- docs: 补充 V2 接口文档与验证截图
2026-09-11 18:21:20 +08:00
admin d917936049 docs: 补充 v2 接口文档与验证截图,更新 README
- docs/V2_API.md 说明 /api/v2/* 各接口参数与回包结构
- docs/screenshots/ 归档概览/书架/笔记/详情/发现/暗色主题验证截图
- README 说明 v2 为默认前端、启动方式与 v1 归档位置
2026-09-11 18:21:13 +08:00
admin 4cbaabd42c chore: 新增 v2 看板启动脚本 start_dashboard.sh
封装启动流程,支持 PORT / WEREAD_API_KEY / PYTHON_BIN 环境变量。
默认使用托管 Python 环境,避免系统解释器缺少 flask 依赖。
2026-09-11 18:21:13 +08:00
admin 25293a1d50 chore(legacy): 归档 v1 前端至 legacy/v1
v2 成为默认前端后,把 v1 的模板与静态资源原样归档保留,
便于对照回滚。v1 后端接口 /api/* 未做改动。
2026-09-11 18:21:13 +08:00
admin 8af75454a4 feat(web): v2 看板前端接入真实数据接口
前端样式完全沿用 2.0 设计稿,仅替换数据来源。

- templates/index.html 改用设计稿 DOM 结构与类名,引用 styles.css + weapi.js + app.js
- static/css/styles.css 引入 2.0 设计稿样式
- static/js/weapi.js 新增,封装 /api/v2/* 调用为全局 WeApi
- static/js/app.js 重写:保留设计稿全部渲染函数与 CSS 类名,
  数据源由 demo-data.js 静态假数据改为真实接口,
  补充异步加载器、加载/错误状态机与重试按钮
- static/js/demo-data.js 保留为设计稿原始假数据对照
2026-09-11 18:21:06 +08:00
admin a114f3f407 feat(api): 新增微信读书 v2 数据接口层
新建 api_v2.py,以独立 Flask Blueprint 挂载 /api/v2/*,与既有 /api/* 完全隔离,不影响 v1 接口。

- 提供 status / dashboard / shelf / notebooks / notes / book / reviews /
  highlights / underline-thoughts / thought / archives / recommend / search 等接口
- 进程内 TTL 缓存降低接口调用频次;MySQL 不可用时返回 degraded 降级标记
- 阅读状态按 finish_reading / progress / 近 30 天阅读记录综合判定
- 周月维度缺少偏好画像时回退 overall 口径补齐,并标注 preference_source
- app.py 注册 Blueprint;__main__ 端口改为读取 PORT 环境变量
2026-09-11 18:21:06 +08:00
admin e3856ccdcf chore: 忽略 .workbuddy 工作区记忆目录 2026-09-11 18:21:06 +08:00
admin 8e8a0bfba6 feat(web): 移植 2.0 阅读看板探索 Demo 2026-09-11 17:30:10 +08:00
admin f42b114384 docs: 补充 1.0 刷新按钮排查记录 2026-09-11 17:13:25 +08:00
admin 92a48d14cd feat: 添加配置读取工具,支持从环境变量和 .env 文件加载 WEREAD_API_KEY
fix: 修复启动脚本中的 Python 解释器路径识别
style: 更新样式以支持按钮最小宽度和灵活布局
docs: 添加项目最终文档,整合各类信息与说明
2026-07-17 22:11:27 +08:00
admin 3d5a402117 fix(button): 解决按钮高度抖动问题
- 分析发现字符 ↻ 在某些字体下被当作大尺寸字符导致换行
- 修复方案将按钮拆分为图标和文字两层结构
- 使用 inline-flex 布局配合固定高度防止高度变化
- 替换不稳定字符 ↻ 为更稳定的 ⟳ (U+27F3)
- 添加 flex-shrink:0 防止被父容器压缩
- 通过独立选择器控制文字更新保留图标结构
2026-07-17 15:30:48 +08:00
admin 5608562f02 feat: 添加 weread 启停命令 & 修复 macOS SSL 证书问题
- 新增 weread CLI 脚本,支持 weread start/stop [port] 一键管理服务
- app.py 端口改为从环境变量 WEREAD_PORT 读取,默认 8080
- 修复 macOS Python urllib 调用微信读书 API 时 SSL 证书验证失败问题(引入 certifi)
2026-07-17 14:34:35 +08:00
admin c3f5c0ff03 刷新按钮改用 span 结构 + flex 布局,彻底修复高度抖动\n\n问题:\n- width:120px + 字符 ↻ 在某些字体下被当成大尺寸字符渲染\n- 文字强制换行成两行,按钮高度暴涨到 150px+ 变成竖长方形\n\n修复:\n- 改用 ⟳ (U+27F3) 字符,更稳定\n- HTML 结构:<span class="btn-icon">⟳</span><span class="btn-text">刷新</span>\n- CSS 改用 display:inline-flex + align-items:center + justify-content:center\n- 固定 height:36px + padding:0 16px\n- JS 通过 .btn-text 选择器单独更新文字,保留图标 span 2026-07-17 13:28:08 +08:00
admin baeda63646 修复刷新按钮宽度抖动:改用固定 width:120px
- min-width 改为固定 width:120px,容纳最长文案'↻ 同步中...'
- transition 从 all 改为仅 color/border/opacity,避免宽度动画
- 添加 box-sizing:border-box 确保 padding 不撑大按钮
2026-07-17 13:24:13 +08:00
admin 7bc02075bd 刷新按钮支持数据同步:调用 /api/sync 拉取最新数据
- app.py 新增 /api/sync POST 接口:运行 fetch_data.py + migrate_to_mysql.py
- refreshShelf() 先调用 /api/sync 同步数据,再重新加载书架
- 按钮文案三阶段:同步中... → 加载中... → 刷新
- CSS 增加 min-width 防止按钮宽度抖动
- launchd plist 和 start_server.sh 均配置 WEREAD_API_KEY 环境变量
2026-07-17 13:22:19 +08:00