Expand description
§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 nodesNode— a card in the diagram, built viaNodeBuilderEdge— a semantic relationship between nodesTier— a horizontal band of nodesDiagram— 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)].
Structs§
- Backgrounds
- Background color configuration.
- Borders
- Border color configuration.
- Color
Set - A set of color values for a single named color in the palette.
- Connector
- A visual connector between adjacent tiers.
- Container
- A bordered box with a floating label that contains nested layers.
- Diagram
- A validated diagram that cannot represent an invalid state.
- Diagram
Header - Diagram metadata and theme configuration.
- Edge
- A semantic relationship between two nodes.
- Flow
Labels - Directional labels between tiers (typically above external services).
- Fonts
- Font configuration.
- Legend
Entry - A single entry in the diagram legend.
- Metadata
- An extensibility escape hatch for user-defined key-value pairs.
- Node
- An individual card within a tier.
- Node
Builder - Consuming builder for
Node(AP-11). - NodeId
- A validated node identifier.
- RawDiagram
- The raw, unchecked deserialization target for a diagram YAML/JSON file.
- Spacing
- Spacing and shape configuration.
- Tech
- A technology badge displayed on a node card.
- Text
Colors - Text color configuration.
- Theme
- A complete theme for rendering diagrams.
- Theme
Overrides - Partial theme overrides for merging on top of a base theme.
- Theme
Palette - The color palette — maps each
Colorto itsColorSet. - Tier
- A horizontal band of nodes in the diagram, optionally wrapped in a container.
- Title
- The title block of a diagram.
Enums§
- Color
- Named colors in the dendryform palette.
- Connector
Style - The visual style of a connector between tiers.
- Container
Border - The border style of a container.
- Edge
Kind - The semantic type of a relationship between nodes.
- Layer
- A single visual element in the diagram’s layer stack.
- Node
Kind - The semantic type of a node in the architecture diagram.
- Tier
Layout - How nodes within a tier are arranged.
- Validation
Error - Errors that occur when constructing or validating core types.
Functions§
- version
- Returns the version of the dendryform-core crate.