Mind Map
The mind map is a force-directed graph that renders your ideas as nodes and their relations as edges. It gives you a bird’s-eye view of how your thinking connects and evolves.
How It Looks
Section titled “How It Looks”The map renders on a dark canvas with a dot grid background. Nodes are rounded cards colored by status, and edges are styled by relation type. Highly-connected ideas glow and appear larger, making hubs easy to spot.
Visual Language
Section titled “Visual Language”The map uses a consistent visual language so you can read relationships at a glance.
Node Anatomy
Section titled “Node Anatomy”Each node is a card showing:
- Title — the idea name (truncated if long)
- Status dot — colored circle in the top-right corner
- Tags — up to 2 tag pills shown below the title
- Connection count — badge in the bottom-right showing how many relations exist
Node width scales with connection count — ideas with more relations appear larger, making hub ideas easy to spot. Ideas with 3+ connections also get a subtle glow effect matching their status color.
Edge Types
Section titled “Edge Types”Edges encode the relation type through color, weight, and style:
| Relation | Color | Style | Arrow | Meaning |
|---|---|---|---|---|
related | Purple | Thin solid | No | General connection |
parent | Light | Solid, bold | Yes | Hierarchical parent → child |
blocks | Red | Solid, bold | Yes | A blocks progress on B |
inspires | Cyan | Solid, medium | Yes | A inspired the creation of B |
duplicate | Amber | Dashed | No | Auto-detected duplicate |
supersedes | Gray | Dashed | Yes | A replaces B |
Auto-created edges (from duplicate detection) have a score showing similarity percentage. Manually created edges have score: null.
Interaction
Section titled “Interaction”| Action | How |
|---|---|
| Zoom | Scroll wheel or pinch gesture |
| Pan | Click and drag on the background |
| Open idea | Click a node to open the idea detail panel |
| Highlight connections | Hover a node to highlight its direct connections |
| Drag-to-connect | Drag from a node handle to another node to create a relation |
| Context menu | Right-click a node for quick actions (move status, link, focus, archive) |
| Focus mode | Right-click → Focus to dim everything except the 2-hop neighborhood |
| Filter by status | Status toggles above the graph show/hide ideas by status |
| Filter by tag | Tag filter narrows the graph to ideas with specific tags |
| Timeline | Adjustable time window with a brushable density chart showing idea creation frequency. Drag the beginning and end handles to set the visible range, use preset chips (1d, 7d, 30d, All) for quick navigation, or press play to sweep a playhead through the window. Keyboard shortcuts: Space for play/pause, Home to reset, Arrow keys to pan. |
Focus Mode
Section titled “Focus Mode”Right-click any node and select Focus to highlight its 2-hop neighborhood. All other nodes dim to 20% opacity, letting you trace the immediate context of an idea without visual clutter.
Drag-to-Connect
Section titled “Drag-to-Connect”Hover a node to reveal four connection handles. Drag from a handle to another node to create a new relation. A magnetic snap activates within 15px of the target, and a relation type picker appears on drop.
API Access
Section titled “API Access”Retrieve the full graph data to build custom visualizations.
curl https://neuralrepo.com/api/v1/map \ -H "X-API-Key: nrp_your_key_here"Response:
{ "nodes": [ { "id": 42, "title": "Background job processing system", "status": "building", "tags": ["backend", "infrastructure"], "connectionCount": 5, "created_at": "2026-03-15T10:00:00Z" } ], "edges": [ { "id": 1, "source": 10, "target": 42, "type": "blocks", "score": null, "note": "Need auth system before dashboard", "created_at": "2026-03-16T09:30:00Z" } ]}CLI Exploration
Section titled “CLI Exploration”Use nrepo graph to explore the graph from any idea without opening the web app.
# Immediate connectionsnrepo graph 42
# 3 levels deep, filtered to blocks and inspiresnrepo graph 42 --depth 3 --type blocks,inspires42: Background job processing system [building] ├── blocks → 55: Admin dashboard [exploring] ├── blocks → 60: API rate limiting [captured] └── inspires → 71: Event-driven architecture [exploring] └── inspires → 82: Real-time notifications [captured]3D Mind Map
Section titled “3D Mind Map”Toggle the 3D button in the toolbar to switch from the flat force-directed layout to an immersive three-dimensional view.
The 3D view is powered by Three.js and 3d-force-graph. It uses the same graph data as the 2D view with a few visual differences:
- Node labels — rendered as CSS2D overlays (always face the camera)
- Weak edges (
related,duplicate) — rendered as directional particle streams instead of dashes (3d-force-graph does not support dashed links) - Strong edges (
parent,blocks,inspires,supersedes) — rendered as solid lines with directional arrows - Camera — orbit with drag, zoom with scroll, pan with right-drag; auto-fits on load
Clicking a node in 3D works the same as in 2D — opens the idea detail panel. Right-click opens the context menu.
Performance Note
Section titled “Performance Note”The 3D view runs on WebGL. Very large graphs (500+ nodes) may be slower to navigate than the 2D view on lower-end hardware.
Force Controls
Section titled “Force Controls”The toolbar includes force sliders to tune the physics simulation in real time. Open the force controls panel from the toolbar to access:
| Control | Effect |
|---|---|
| Link strength | How strongly connected ideas pull toward each other |
| Node strength | How strongly ideas repel each other (charge) |
| Friction | How quickly the simulation settles (velocity decay) |
| Reheat | Click to re-run the simulation from current positions |
Changes take effect immediately. The Reheat button applies a burst of simulation energy (alpha = 0.3) so ideas settle into a new arrangement after you adjust sliders.
You can save custom force configurations as presets and switch between them from the toolbar dropdown. Presets are stored in localStorage.
Agent Chat Panel
Section titled “Agent Chat Panel”The floating AI agent chat panel hovers over the mind map. Click the NeuralRepo icon in the bottom-right corner of the map to open it.
The panel is draggable — grab the header to reposition it anywhere on the map. Its position is saved to localStorage per session.
Model Selector
Section titled “Model Selector”A model selector appears at the top of the panel. Available models depend on your BYOK configuration:
- Anthropic models (Sonnet, Haiku, Opus) — require a BYOK Anthropic key
- Workers AI models (Qwen 30B, Llama 70B, GPT-OSS 120B, Mistral Small 24B) — no key required
Your selected model is remembered across sessions.
Streaming & Thinking
Section titled “Streaming & Thinking”Responses stream token-by-token over a WebSocket connection. A collapsible “Thought process” block appears above the response text when extended thinking is active — click it to expand and read the model’s reasoning.
Tool Results
Section titled “Tool Results”Tool calls render as collapsible ToolResultCards in the message thread. Each card shows:
- A summary line (e.g., “Found 5 ideas for ‘machine learning’”)
- Expandable detail content
- Clickable idea chips — click a chip to highlight that node on the map and scroll it into view
Graph-mutating tool calls (creating ideas, creating connections, semantic layout) animate directly onto the map. See Artifacts for full details.
Selection Context
Section titled “Selection Context”When you have nodes selected on the map, the agent automatically receives the selected idea IDs and titles as additional context. This lets you say things like “summarize these” or “connect these ideas” without specifying them by name.
The panel header shows an undo button when there are reversible agent actions in the current session. Clicking undo reverses the last mutation: deletes created ideas, removes created relations, or restores layout positions.
Performance
Section titled “Performance”The mind map uses two rendering modes depending on graph size:
- SVG rendering (up to 200 nodes) — full interactivity, crisp at any zoom level
- Canvas rendering (200+ nodes) — optimized for large graphs, device-pixel-ratio aware
The force simulation uses D3.js with tuned physics: charge repulsion scales with a density slider, link distance is 120px, and ideas with the same first tag weakly cluster together.