Skip to content

项目现状与路线图

一句话定位

云族记是一个私有部署的家族管理应用,由两大模块组成:人际关系(族谱关系网络)与家族事务(图文纪事、收支)。它核心解决传统族谱软件"只会画父系树、表达不了真实婚姻与跨家关系、误删不可恢复"的问题。

当前状态

V1 核心流程已跑通,处于收尾与打磨阶段,尚未正式对外发布。

  • 族谱画布、分身体系、称呼引擎、权限模型、归档撤销、真人认领等核心业务链路已完整可用
  • CSV / GEDCOM 导入导出等配套能力已具备
  • 第二大模块「家族事务」(图文纪事、收支)已搭出主体,仍在打磨,详见家族事务
  • 代码约 3 万行,核心算法由 50 个无头回归脚本守护
  • 仓库内保留了多个模拟家族(黄氏、陆氏、云氏、赵氏等)作为关系算法的测试夹具

已经完成

关系建模与展示

  • 一人多位的分身体系,配偶 / 外亲跨家族挂接
  • Canvas 全自绘画布:缩放、平移、长按菜单、等待区拖拽上树、图片导出
  • 200+ 条规则的自动称呼引擎,支持血亲 / 姻亲 / 双向称呼
  • 父系族谱模式、配偶覆盖矩形、近亲关系提示、分身连线

身份与治理

  • 真人注册 → 认领模拟登记 → 身份合并的完整认证链路
  • 家族认领自证题,防止同名误认
  • 家族开放三档(开放 / 半开放 / 封闭)+ 逐人特批名单
  • 分身匿名、主分身设置、默认进入家族偏好

安全与可恢复

  • 三层权限(数据库 schema / 云函数校验 / 前端显隐)
  • 数据出口的匿名 id 净化,防止抓包反推
  • 全写操作归档留痕,删除 / 认领 / 导入均可撤销,删除虚影可恢复

数据与工程

  • CSV 批量导入(预览 → 提交 → 可整批撤销)与全族导出
  • GEDCOM 5.5.1 / 7.0 转换兼容
  • 云函数按业务域拆分 + 公共核心模块
  • 50 个 Node 无头回归脚本,一条命令跑完全部核心校验

计划中

以下是 V1 之后的主要方向(会随实际使用反馈调整优先级):

  • 首页与信息架构改版:让长辈用户第一眼就知道该做什么,降低上手门槛
  • 家族事务模块完善:把第二大模块的图文纪事、老照片、收支、已读反馈补齐做稳,并探索纪事与族谱成员/纪念日的关联
  • 画布双实现收口:废弃旧的只读版画布,统一到全功能主画布,降低维护成本
  • 工程整理与重构:在保留一个"可运行基线版本"后,对历史中间态代码做模块化重构、主题令牌统一、死代码清理
  • TypeScript 迁移评估:对称呼引擎、数据组装等纯逻辑模块优先类型化
  • 更多导出形态:族谱大图、分页打印、代际报告

设计原则

这些原则贯穿了整个开发过程,也是面对新需求时的取舍依据:

  1. 数据真相唯一:服务端数据库行是唯一事实源,前端缓存只做加速,不定义关系语义。
  2. 危险操作必须可逆:族谱数据不可再生,宁可归档留痕,也不做无法挽回的物理删除。
  3. 列表不过滤、操作才校验:搜索和候选列表不按性别 / 生日等条件硬筛(避免误杀真实数据),校验放到用户真正提交的那一刻。
  4. 前端隐藏不是安全边界:所有权限在服务端重新判定。
  5. 接口失败不覆盖正常内容:网络出错时保留页面上已有的数据,不用空结果把界面清空。
  6. 面向自家人,而非公网:私有部署、威胁模型小,安全护栏按"低成本保险"设计,不引入面向公共互联网的重型防滥用机制。

技术栈速览

uni-app(Vue 3 + Vite)· uniCloud 阿里云(云函数 + 文档数据库)· Pinia · Canvas 2D · 微信小程序 / App / H5 三端。

详细的架构说明见 技术架构

关于源码与协作

云族记是一个独立开发的实践项目,源码托管在 Gitee 与 GitHub(页面右上角的 GitHub 图标可跳转)。如果你对其中的关系建模、称呼算法或权限设计感兴趣,欢迎交流。

私有部署 · 家族专用