Skip to content

arch.diagrams

Package arch.diagrams · Version 0.1.0

Data-modelling primitives for entity / ER-style diagrams. Provides a table module kind and a column interface kind so you can draw schema and relationship diagrams — tables with typed columns and the keys linking them — in the same workspace as the rest of your architecture.

Widgets render tables in the familiar header-plus-rows shape. Import with use table, column from arch.diagrams.

TypeExtendsDescription
columninterfaceA table column — its name is the column name and its dtype field the type annotation
tablemoduleTabular structure — one row per column interface. The dtype field on each column becomes its type annotation, e.g. table Users { column id { dtype: “uuid” } column email { dtype: “text” } }
operationinterfaceA class operation / method — a member of a class box
classmoduleTwo-compartment UML class box, e.g. class Account { column id { dtype: “uuid” } column balance { dtype: “money” } operation deposit { returns: “void” } operation withdraw { returns: “bool” } }
memberinterfaceAn enum member — one named value of an enum box
enummoduleEnumeration, e.g. enum OrderStatus { member pending member shipped { value: 1 } member delivered { value: 2 } }
notemoduleAnnotation sticky, e.g. note Caveat { “Auth tokens expire after 15 min — refresh flow not shown.” }
statemoduleA state-machine state — a node in a state diagram
initial_statestateThe initial pseudo-state a machine starts in — a small filled dot
final_statestateA terminal state — the double-ring UML final marker

See also: package.archspace reference · The standard library.