v2026.6.9
fortemi-react v2026.6.9 release notes.
fortemi-react v2026.6.9
fortemi-react v2026.6.9 turns the `@fortemi/graph` community layout into a real deterministic force settlement, so settled relationship maps are reproducible across static SVG generation, server rendering, and the browser.
Highlights
- Deterministic force settlement (#206): `layoutCommunityGraph`'s `force` algorithm now runs a fixed-iteration, seeded settlement — spring link attraction, charge repulsion, collision spacing, community cohesion, centering, and per-tick bounds clamping — instead of a closed-form radial ring. Identical `(graph, options)` always yields identical coordinates, with no animation frames.
- Tunable layout options: new optional `seed`, `ticks`, `nodeRadius`, `linkDistance`, `linkStrength`, `chargeStrength`, `collisionPadding`, `communityStrength`, and `boundsPadding`, each with a documented default.
- Per-node radius and community centroids: positioned nodes carry a stable render radius `r` (degree-derived by default, overrideable), and the result exposes `communities` centroids over the final layout.
- Closed-form algorithms unchanged: `radial`, `community`, and `manual` remain closed-form and now also honor `boundsPadding`.
- Documentation build refresh: the docs site builds with the latest `@pagenary/publisher` (2026.6.13) with no build warnings, and documentation is synced to code.
Published Packages
- `@fortemi/[email protected]`
- `@fortemi/[email protected]`
- `@fortemi/[email protected]`
Compatibility
Existing `2026.6.8` consumers upgrade without source changes. The `layoutCommunityGraph` signature is unchanged and all new options are optional; the added `r` field on positioned nodes and the `communities` field on the result are additive. Hosts that select the `force` algorithm now receive settled coordinates rather than a closed-form ring — a visual change in output, not an API change. The `radial`, `community`, and `manual` algorithms produce the same positions as before (now clamped to `boundsPadding`).
Verification
Release preparation used the configured release flow:
- `pnpm typecheck`
- `pnpm lint`
- `pnpm test:core`
- `pnpm test:e2e`
- `pnpm build`
- CI green before tag publication