定制 waaseyaa/genealogy 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

waaseyaa/genealogy

最新稳定版本:v0.1.0-alpha.179

Composer 安装命令:

composer require waaseyaa/genealogy

包简介

Genealogy domain entities, graph traversal, and public SSR for Waaseyaa

README 文档

README

Genealogy domain entities (genealogy_tree tenancy root, person, family, event), graph edges via waaseyaa/relationship, pedigree services, and Twig SSR routes for Waaseyaa applications.

Runtime waaseyaa/field registers core FieldDefinitions; waaseyaa/workflows supplies WorkflowVisibility for published checks alongside tree ownership and living-person rules. See CHANGELOG.md for breaking defaults (private-by-default, status off, SSR opt-in field).

Transport: JSON:API is optional

This package is data, access policy, and SSR — it does not declare a runtime dependency on waaseyaa/api. Host applications (for example Minoo) wire JSON:API if they expose REST collections for genealogy types.

Consumers that are GraphQL-only, SSR-only, or otherwise API-less can depend on waaseyaa/genealogy without pulling the JSON:API stack.

Future: waaseyaa/genealogy-api

If package-specific HTTP surfaces are needed (for example access-aware pedigree pagination that does not map cleanly onto generic JSON:API), introduce a dedicated waaseyaa/genealogy-api package that depends on both waaseyaa/genealogy and waaseyaa/api (or the HTTP layer you choose).

Invariant: no Waaseyaa\Api\ coupling in package sources

Production PHP under src/ must not import or reference Waaseyaa\Api\… classes (no use, extends, instanceof, new, or ::class on API types). Integration that the API package reads from config or attributes when the host has installed api is allowed — no hard PHP coupling from this package.

Verify locally:

composer verify:no-api-coupling

Run this in CI for the genealogy package so regressions fail the build.

Downstream access posture

Applications that need stricter visibility than this package’s defaults may register additional AccessPolicyInterface implementations (for example Forbidden-first overlays). That pattern is for downstream products; Minoo and this package prefer source-level policy defaults in waaseyaa/genealogy during active development.

统计信息

  • 总下载量: 263
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 11
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: GPL-2.0-or-later
  • 更新时间: 2026-04-22