dendryform-core
Core schema types, validation, theme, and layout plan for dendryform.
This crate defines the data model for describing software architecture diagrams: nodes, edges, tiers, connectors, containers, and the theme system. All types use private fields with validated constructors to ensure invalid states are unrepresentable.
Key Types
- [
NodeId] — validated slug identifier for nodes - [
Node] — a card in the diagram, built via [NodeBuilder] - [
Edge] — a semantic relationship between nodes - [
Tier] — a horizontal band of nodes - [
Diagram] — the validated top-level document
Construction Patterns
Types are constructed either programmatically (via builders and
constructors) or by deserializing YAML/JSON. Deserialization of
[Diagram] validates cross-cutting invariants automatically via
#[serde(try_from)].