Logo
NeoArc Studio

Nodes and Edges

Configure graph diagram nodes with typed properties, constraints, and per-property projections. Create edges with labels and style nodes with custom colours. Model nodes support search, API, and persistence projections.

Nodes and edges are the building blocks of graph diagrams. Nodes represent entities with optional properties and constraints. Edges connect nodes and can have labels to describe relationships.

Try It: Interactive Example

Explore this diagram to understand nodes and edges. Double-click on the Customer node (blue) to see its typed properties including required fields and unique constraints. Notice the edge labels like "places" and "contains" that describe relationships.

Node Properties

Every node has these core properties:

Typed Properties

Nodes can have typed properties like an ERD:

PropertyDescription
NameProperty name (required)
TypeData type (String, Number, Boolean, etc.)
RequiredMarks the property as required
NullableAllows null values
UniqueEnforces uniqueness
IndexedIndicates indexing
Default ValueDefault when not specified
DescriptionDocumentation for the property

Constraint Badges

Properties display visual badges for constraints:

Required
Red background badge indicates mandatory field
Unique
Green background badge indicates unique constraint
Indexed
Blue background badge indicates database index

Per-Property Projections

In graph-db mode, each property supports projection flags that control how the field appears across derived artefacts. Projections are relevant for both standalone graph diagrams and the project model (model.neoarc).

ProjectionPurpose
SearchProperty is included in search indices. Controls whether the field is searchable, filterable, or used as a facet
APIProperty is included in API responses. Controls field visibility in generated API schemas
PersistenceProperty is included in the persistence layer. Controls whether the field is stored in the database
CustomUser-defined projection for project-specific concerns (e.g. audit, reporting, analytics)

Edge Structure

Edges connect two nodes with optional labels:

Creating Edges

Editing Edge Labels

Node Styling

Nodes render as circles with configurable colours:

PropertyValue
FillWhite (light) or dark grey (dark theme)
StrokeDefault blue (#4A90D9), customisable per node
Stroke Width5px
Min Radius30px (expands with label length)
FontSystem UI, 14px

Edge Styling

Edges render as lines with arrows:

PropertyValue
Stroke ColourGrey (#666666 light, #888888 dark)
Stroke Width2px
ArrowSolid fill matching stroke
Labels12px font, positioned along the edge

Selection and Editing

ActionResult
ClickSelect a single node or edge
Ctrl+ClickAdd to selection (multi-select)
Double-click nodeEdit label
Double-click edgeEdit label
Delete/BackspaceRemove selected elements
EscapeClear selection

Node Dragging

Drag nodes to reposition them:

Next Steps

Key Roles and Properties
Advanced property configuration with types, constraints, and validation
Learn more →
Edge Properties and Cardinality
Configure relationship cardinality and edge attributes
Learn more →
Force Simulation
Control layout and node spacing
Learn more →
Authoring Modes
Mind Map, Conceptual, and Graph DB modes
Learn more →
Validation Rules
Schema validation with 18 rules (10 core + 8 search-specific)
Learn more →
Viewing and Export
Viewer features and Cypher export
Learn more →