Skip to content

NodePrimitive

stable

Draggable graph node with status-driven styling and pulse animation

GraphInteractive/Storybook ↗
import { NodePrimitive } from "@nodus/design-system"
Loading demo…

Props

idrequired
Type stringDefault

Unique node identifier

size
Type "small" | "medium" | "large"Default "medium"

Node diameter

status
Type "idle" | "active" | "completed" | "error" | "selected"Default "idle"

Visual status

label
Type stringDefault

Text label below the node

draggable
Type booleanDefault

Enable drag interaction

onClick
Type (id: string) => voidDefault

Click handler

Metadatasmallmediumlargesemantictypebordersurfacenodemotion
MobileTouch Target

Node tap area should be ≥44px for selectable/draggable nodes. Add hit-area padding via transparent border or larger bounding box when nodes are <44px.

Design Rationale

This component was designed to express:

Explore Related

Was this helpful?