This commit is contained in:
freedakgmail
2025-11-22 19:52:55 +08:00
commit 43c8389705
28950 changed files with 3640981 additions and 0 deletions
+75
View File
@@ -0,0 +1,75 @@
# 华夏谱 (HuaXiaPu) - 系统完善计划
本计划旨在将当前的“华夏谱”原型系统转化为一个功能完备、数据安全、体验优秀的家族树管理应用。
## 阶段一:数据持久化与基础可用性 (Data Persistence & Usability)
**优先级:最高 (P0)**
**目标**:解决刷新页面导致数据丢失的问题,确保用户录入的数据能够安全保存。
1. **本地存储 (Local Storage) 集成**
* **机制**:利用浏览器的 `localStorage` API。
* **实现**
* 修改 `FamilyContext`,在应用启动时优先从 `localStorage` 读取数据。
*`addMember`, `updateMember`, `deleteMember` 等所有写操作后,自动同步最新状态到 `localStorage`
* 使用 `useEffect` 监听数据变化并防抖保存。
* **重置功能**:在设置页添加“清除本地缓存”按钮,用于恢复默认演示数据。
2. **数据备份增强**
* **优化 JSON 导出**:确保导出的 JSON 文件包含完整的时间戳、版本号和元数据。
* **智能导入**:导入时进行数据格式校验,防止坏数据崩坏页面;提供“合并”或“覆盖”选项。
## 阶段二:核心功能增强 (Core Feature Enhancement)
**优先级:高 (P1)**
**目标**:补充家谱管理中必不可少的多媒体和标准格式支持。
1. **多媒体支持 (Media Support)**
* **头像上传**
* *方案 A (纯前端)*:实现图片裁剪并转换为 Base64 字符串存储(注意控制大小)。
* *方案 B (云存储)*:集成 AWS S3 或类似对象存储服务(需后端支持)。
* **相册功能**:允许为每个成员添加多张生活照。
2. **GEDCOM 标准支持**
* **导入**:引入 GEDCOM 解析库 (e.g., `read-gedcom`),支持从其他软件(如 Ancestry, MyHeritage)迁移数据。
* **导出**:将内部数据结构转换为标准 `.ged` 格式,确保数据可迁移性。
3. **族谱可视化升级**
* **导出图片**:集成 `html2canvas` 或类似库,允许用户将当前的家谱树导出为高清 PNG/JPG 图片,方便打印。
* **视图切换**:增加“垂直视图”(传统吊线图)和“水平视图”的切换。
* **折叠/展开**:支持点击节点折叠子分支,优化在大数据量下的查看体验。
## 阶段三:逻辑校验与体验优化 (Logic & UX)
**优先级:中 (P2)**
**目标**:提升数据的准确性,防止逻辑错误的录入。
1. **逻辑校验规则**
* **时间校验**:出生日期 < 逝世日期;子女出生日期 > 父母出生日期 + X 年。
* **关系校验**:防止循环引用(自己不能是自己的祖先)。
* **完整性提示**:提示缺失信息的成员(如缺失配偶、缺失生卒年)。
2. **搜索与筛选增强**
* **高级搜索**:支持按字辈、籍贯、标签、生卒年份范围进行组合筛选。
* **快速定位**:搜索结果点击后,在族谱图中自动居中并高亮显示该成员。
3. **界面细节打磨**
* **移动端适配**:优化移动端的触摸拖拽和缩放体验。
* **暗色模式**:完善 Dark Mode 的配色细节。
* **多语言**:支持 简体中文 / 繁体中文 切换。
## 阶段四:后端集成与协作(远期规划)
**优先级:低 (P3)**
**目标**:支持多用户在线协作修谱。
1. **用户系统**:集成 NextAuth.js,支持邮箱/手机号登录。
2. **云端数据库**:迁移至 PostgreSQL + Prisma,实现数据的云端永久存储。
3. **权限管理**
* *管理员*:可编辑所有信息。
* *编辑者*:仅可编辑特定分支。
* *浏览者*:仅查看,不可编辑。
4. **操作日志**:记录谁在什么时候修改了哪条记录(修谱记录)。
---
## 建议执行路径
1. **立即执行**:完成 **阶段一**,使应用具备基本的实用价值。
2. **随后**:根据用户反馈,选择性实施 **阶段二** 中的“导出图片”和“GEDCOM支持”。