Claude-code-minoan mindnode-ui

Build MindNode-inspired mind mapping interfaces — 8 node shapes, 27+ themes, layout algorithms (horizontal, vertical, radial with D3), keyboard shortcuts, focus mode, dual view. React + xyflow/react v12 + Zustand + Tailwind. Triggers on mind map, visual thinking tool, node-based diagram, brainstorm canvas, MindNode.

install
source · Clone the upstream repo
git clone https://github.com/tdimino/claude-code-minoan
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/tdimino/claude-code-minoan "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/design-media/mindnode-ui" ~/.claude/skills/tdimino-claude-code-minoan-mindnode-ui && rm -rf "$T"
manifest: skills/design-media/mindnode-ui/SKILL.md
source content

MindNode UI

Build mind mapping interfaces inspired by MindNode — the Apple-native visual thinking app by IdeasOnCanvas GmbH. This skill encodes MindNode's design system, interaction model, and layout algorithms, adapted for React + ReactFlow + Zustand + Tailwind CSS 3.

Key Design Principles

  • Visual-first thinking — spatial canvas for non-linear ideas, outline for linear structure
  • Apple-native aesthetic — soft rounded elements, generous whitespace, purple accent (#6C63FF)
  • ADHD-friendly — Focus mode isolates one subtree, Quick Entry captures ideas fast
  • Keyboard-driven — Tab=child, Return=sibling, arrows=navigate, no mouse required

Quick Reference

Node Shapes (8)

ShapeKeyUse Case
RoundedDefaultGeneral ideas
RectangleStructuredFacts, definitions
PillStadiumTags, labels
CloudOrganicBrainstorms
LineMinimalSubtitles
EmbeddedInsetReferences
HexagonProcessDecision points
OctagonWarningCritical items

Essential Keyboard Shortcuts

ActionMacDescription
New child
Tab
Add child to selected node
New sibling
Return
Add sibling after selected
New main
Shift+Return
Add root-level branch
Edit title
Cmd+Return
Enter contentEditable mode
Navigate
Arrow keys
Move between nodes
Fold/unfold
Option+.
Toggle subtree visibility
Cross-link
Cmd+L
Connect non-adjacent nodes
Mind map view
Cmd+1
Switch to canvas view
Outline view
Cmd+2
Switch to list view
Delete
Backspace
Remove node, re-parent children

Theme Types

TypeBehaviorExample
DynamicAuto light/dark adaptationElegant, Fresh
StaticFixed colorsRainbow, Goth Pastel, Twilight
PersonalExtracted from current documentUser-defined

Layout Directions

DirectionRoot PositionTree Expands
HorizontalLeftRightward (default)
VerticalTopDownward
CompactCenterOutward (dense)
RadialCenterAll directions (polar)

Reference Files

Load these on demand based on what aspect of MindNode UI is needed.

Routing Table

When working on...Load
Color palette, typography, visual language, Apple aestheticreferences/design-system.md
Node shapes, SVG paths, contentEditable, Node Wellreferences/node-types.md
Dynamic/static themes, per-level colors, theme galleryreferences/themes.md
Tree layout, D3 radial, auto-arrange, flexible positioningreferences/layout-algorithms.md
Keyboard shortcuts, focus mode, drag, outline syncreferences/interaction-patterns.md
Dual view (mind map + outline), canvas, connections, exportreferences/canvas-and-views.md
ReactFlow custom nodes/edges, Zustand store, performancereferences/reactflow-integration.md
Porting to Project Pilot specificallyreferences/project-pilot-porting.md

Key Implementation Patterns

Node Well (Primary Creation UX)

The plus button appearing on hover/selection that creates a child node. This is MindNode's signature interaction — not a toolbar, not a menu, but a contextual affordance on each node.

→ See references/node-types.md for implementation details.

D3 Radial Tree Layout

Compute tree positions with

d3.tree()
, then transform to polar coordinates:

x = radius × cos(angle − π/2)
y = radius × sin(angle − π/2)

→ See references/layout-algorithms.md for full algorithm with code.

Per-Level Hierarchical Theming

Each theme defines colors per depth level: root (prominent), level 1 (branch colors, cycled from palette), level 2+ (progressively softer). Branch children inherit their parent's color family.

→ See references/themes.md for theme data structures and CSS generation.

Dual View Sync

Mind map and outline views share a single data model. Changes in either view propagate immediately. Selection state syncs bidirectionally.

→ See references/canvas-and-views.md for architecture and data model.


Tech Stack Assumptions

This skill assumes:

  • React 18 with TypeScript
  • @xyflow/react v12 for the canvas (custom nodes, edges, handles)
  • Zustand for state management (single store with slices)
  • Tailwind CSS 3 with CSS custom properties (
    var(--color-*)
    )
  • D3 (
    d3-hierarchy
    ,
    d3-shape
    ) for tree layout computation
  • No Framer Motion on ReactFlow nodes — RF manages transforms, FM would override them

For Project Pilot–specific adaptation, see references/project-pilot-porting.md.