Graph Diagrams
Create interactive force-directed graph diagrams in three authoring modes: mindmap, conceptual, and graph-db. Graph-db mode adds typed properties with 12 abstract types, 6 key roles, per-property projections, composite constraints, and Cypher DDL export. Includes 18-rule validation, version snapshots, architecture transitions, group and tag filtering, and search. Graph-db mode also serves as the editing canvas for the project model (model.neoarc).
Graph diagrams visualise relationships between concepts using nodes and edges. Unlike traditional diagrams where you manually position every element, graph diagrams use force-directed physics to arrange nodes automatically. Related nodes cluster together naturally, revealing structure without manual layout work.
Dual Purpose: Standalone Diagrams and Project Model
Graph diagrams serve two purposes. As standalone files (.graph-diagram.json), they model graph databases, domain relationships, and dependencies. In graph-db mode, the same editor also serves as the editing canvas for the project model (model.neoarc), which is the single source of truth for your project's data architecture.
Three Authoring Modes
Graph diagrams support three authoring modes, each with different spacing, validation, and property behaviour. Choose the mode that matches your modelling intent.
Graph-DB Mode
Graph-db mode turns graph diagrams into functional data models with typed properties, constraints, and export capabilities.
| Feature | Details |
|---|---|
| Property Types | 12 abstract types: string, number, boolean, date, datetime, integer, float, enum, uuid, json, array, object |
| Key Roles | 6 roles: PK (primary key), FK (foreign key), NK (natural key), SK (surrogate key), composite-part, foreign |
| Composite Constraints | Define composite keys from multiple properties. Mark each constituent property with the composite-part role |
| Per-Property Projections | Each property supports projection flags: search (included in search indices), API (included in API responses), persistence (included in persistence layer), and custom projections |
| Groups (Subdomains) | Organise nodes into named groups representing subdomains or bounded contexts. Groups enable filtering and scoped view generation |
| Edge Properties | Edges in graph-db mode also support typed properties, modelling relationship attributes (e.g. weight, since-date, role) |
| Cypher DDL Export | Export the graph model as Cypher DDL statements for direct import into Neo4j. Node labels, properties, constraints, and relationships are all included |
Validation
Graph-db mode enforces validation rules across core and search-specific categories to maintain model quality. Conceptual mode runs a subset of the core rules. Mindmap mode runs none.
Use Cases
Example: E-Commerce Data Model
Example: Microservices Dependencies
Example: Insurance Domain Model
Version History and Transitions
Graph diagrams support the same versioning and transition system as standard diagrams.
Search, Group, and Tag Filtering
Links Mode
Graph links are a variant of graph diagrams where each node links to a page or external URL. Nodes become navigation targets rather than data model entities.
Force-Directed Layout
Graph diagrams use physics simulation to position nodes. Each authoring mode applies different simulation parameters.
| Parameter | Mindmap | Conceptual | Graph-DB |
|---|---|---|---|
| Node Spacing | Loose (generous separation) | Balanced (moderate density) | Tight (high density) |
| Repulsion Strength | High | Medium | Low |
| Edge Spring Length | Long | Medium | Short |
| Collision Radius | Large | Medium | Compact |
Creating Graph Diagrams
Colour Coding
Use consistent colours to distinguish node types.
| Colour | Suggested Use |
|---|---|
| Blue | Entry points, gateways, primary entities |
| Green | Services, processes, active components |
| Purple | Databases, storage, persistent state |
| Orange | Queues, events, asynchronous components |
| Red | External systems, third-party integrations |
| Grey | Reference data, configuration, static entities |
Additional Features
Create force-directed graph diagrams for ERD-style schema visualisation, domain modelling, and project model editing. Use D3.js-powered layouts with typed properties, constraints, per-property projections, and interactive editing. Graph-db mode graphs can also serve as the project model (model.neoarc).
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.
Understand how D3 force simulation positions nodes automatically. Control spacing, link strength, and layout behaviour.