Guides

Entity Types

Entity types represent the primary objects in your domain — equivalent to tables in a relational schema or nodes in a graph.

Create an entity type

Press N on the canvas, or click Add entity type in the sidebar. A new node appears on the canvas. Click its name to rename it.

Properties

Each entity type has a list of properties. Select an entity type and use the Properties panel to add fields. Each property has:

  • Name — the field identifier (camelCase or snake_case)
  • Data type — see Properties for all supported types
  • Required — whether the field must be present
  • Description — optional documentation for the field

Inheritance

Entity types can inherit from a parent. Select an entity type, open the Settings tab in the properties panel, and choose a Parent type.

A child type inherits all properties from its parent. Inherited properties are shown in the panel with a badge indicating their source. You can add additional properties on the child without affecting the parent.

Inheritance chains can be multiple levels deep (grandparent → parent → child).

Abstract types

Mark an entity type as Abstract in its settings panel. Abstract types define a shared structure meant to be extended — they're not intended to hold data directly.

Abstract types appear with a dashed border on the canvas. They can still be used as relationship endpoints if needed.

Reorder properties

Drag and drop properties within the panel to reorder them. Property order is preserved in exports.

Delete an entity type

Right-click the entity type on the canvas and choose Delete, or select it and press Delete/Backspace. Any relationships connected to that entity type are also removed.