Files
FootPrint/app
root 11cfeeb3a6 feat(assessment): unified GPA source, full evidence gallery, editable scoring rules, 3x3 info with phone
- fix per-year computation: termYearOf parses semester terms (2023-2024-1) so year Scots no longer skipped the semester filter (previous bug made yearly score empty)
- academic score now uses semester.gpa shown on grades page (single source of truth); fallback recalculates with the same band-linear + category weights formula
- gradeLabel infers grade year (freshman/sophomore) from eduStart, falls back to earliest semester year
- info grid 3x3 with phone number as the 9th cell (page + word export)
- evidence gallery shows every activity/competition record with attachments in scope (no 2-image cap), records marked scored/unscored
- scoring rules reference panel: default rules editable and persisted with profile; restore-default button; no college/school names in citations
- word export mirrors all of the above, adds rules annex table; removed dead zongceWord.ts with school citation
- sync-server/www rebuilt
2026-10-17 17:33:49 +08:00
..
2026-10-17 12:05:56 +08:00

足迹 Footprints — 应用目录

React 19 前端 + Tauri 2 桌面壳 + 共用 Node 命令层。 云优先架构:业务数据全部存服务器(../sync-server),浏览器 / PWA / 桌面三端共享同一命令契约。

结构

src/          React 前端(时间线 / 记录 / 成绩 / 统计 / 类型 / 字典 / 管理)
public/       PWA:sw.js(v3,接口类请求绝不缓存)/ manifest / 图标
src-tauri/    Tauri 2 桌面壳(Windows NSIS 安装包构建)
server/       db.mjs 命令层(37 个命令,Web 与桌面共用)+ seed.mjs(本地演示数据)
schema.sql    数据库 schema(Rust 与 Node 共用同一份,v2 含同步元数据)

图标再生成:python ../tools/gen_icons.py(桌面)与 python ../tools/gen_pwa_icons.py(PWA)。

文档:../docs/DESIGN.md(设计底稿)· ../docs/api.md(HTTP API)· ../sync-server/(服务器)。