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
- 点击次数: 7
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: GPL-2.0-or-later
- 更新时间: 2026-04-22