Skip to main content

Configuration

Access: Settings (Ctrl/Cmd+,) → Nexus Properties

User Interface

Show Ribbon Icon (default: true): Display graph icon in left ribbon

  • ⚠️ Restart required after changing

View Sidebar Position (default: Left sidebar): Choose which sidebar to open the Nexus Properties view in

  • Options: Left sidebar or Right sidebar
  • Your preference is saved and applied when opening the view
  • Only affects new view creation (not existing open views)

Show View Switcher Header (default: true): Display header with toggle button in Nexus Properties view

  • Changes apply immediately

Show Depth Slider in Graph View (default: true): Display interactive depth slider in graph view header

  • Temporarily adjust recursion depth for statistics and hierarchy rendering
  • Slider changes don't save to settings - only affect current session
  • Controls how many levels up/down to traverse from current node
  • Learn more →

View Switcher Statistics

Show Simple Statistics (default: true): Display direct parent, children, and related counts

  • Shows immediate relationships only (one level)
  • Format: Parents: N, Children: N, Related: N

Show Recursive Statistics (default: true): Display recursive (all) parent, children, and related counts

  • Shows all relationships across entire hierarchy
  • Format: All Parents: N, All Children: N, All Related: N
  • Uses efficient traversal with cycle detection
  • Respects current depth slider value when active

Layout: Statistics appear on the left side of the view switcher header without affecting the centered toggle button position.

General

Hierarchy Source

Hierarchy Source (default: Properties): Choose where to read relationship hierarchy from

  • Properties: Read from frontmatter properties (Parent, Children, Related) - traditional behavior
  • MOC Content: Read from bullet lists with wiki links in the note body - for Map of Content files

When set to "MOC Content", the plugin parses nested bullet lists to determine parent-child relationships:

- [[Parent Topic]]
- [[Child 1]]
- [[Child 2]]

Learn more →

MOC Content Reading

Enable MOC Content Reading (default: true): Allow the plugin to detect and parse MOC content

When enabled:

  • Files with valid MOC content (3+ links, 2+ levels) show a hierarchy source toggle button
  • The button appears next to the view toggle for quick switching between "Properties" and "MOC Content" modes

When disabled:

  • No MOC content detection occurs
  • The hierarchy source toggle button is hidden
  • Only frontmatter properties are used for relationships

What is "valid MOC content"?

  • At least 3 wiki links in bullet list format
  • At least one bullet has nested children (2+ levels of indentation)

Graph Display

Show Search Bar by Default (default: true): Display search bar on graph open

Show Filter Bar by Default (default: true): Display filter bar on graph open

Show Zoom Indicator (default: true): Display zoom level indicator in filter row

  • Shows current zoom percentage (e.g., "100%")
  • Click to type a specific zoom level

Maintain Indirect Connections When Filtering (default: true): Preserve connections when intermediate nodes are filtered

  • Example: A → B → C, filter out B → shows A → C
  • Prevents graph fragmentation during filtering
  • Learn more →

Graph Enlarged Width (default: 75%, range: 50-100%): Window width when enlarged

Zoom Preview Height (default: 280px, range: 120-700px): Max height for zoom preview panel

Zoom Preview Frontmatter Height (default: 90px, range: 50-300px): Max height for frontmatter section

Graph Animation Duration (default: 800ms, range: 0-2000ms): Layout animation duration (0ms = instant)

Depth Settings

All Related Recursion Depth (default: 10, range: 1-20): Max levels in "All Related" constellation mode

  • Controls how many hops to traverse when exploring related connections
  • Used when "Include All Related" is enabled in graph view
  • Affects graph building and recursive statistics calculation
  • Can be temporarily adjusted with depth slider

Hierarchy Traversal Depth (default: 10, range: 1-50): Max levels in parent-child hierarchy mode

  • Controls how many levels up/down to traverse in hierarchy graphs
  • Creates a viewing window centered on the current file
  • Used for both upward (parents) and downward (children) traversal
  • Can be temporarily adjusted with depth slider

Multi-Row Layout

Configure how nodes with many children are displayed in hierarchy mode.

Use Multi-Row Layout for Large Families (default: false): Enable multi-row child positioning

  • Distributes children across multiple staggered rows when a parent has many children
  • Uses more vertical space and less horizontal space for better readability
  • Applies only in hierarchy mode (not constellation or related views)

Max Children Per Row (default: 10, range: 3-30): Maximum children in a single row

  • When exceeded, children wrap to next row in staggered pattern
  • Pattern: full row (10), offset row (9), full row (10), offset row (9)...
  • Offset rows fit between nodes in the row above, creating a domino effect
  • Only applies when multi-row layout is enabled

How it works:

  1. Parent with 15 children and max=10:
    • Row 1: 10 children in a line
    • Row 2: 5 children offset between Row 1 gaps
  2. Grandchildren are positioned below the lowest row of their parent's generation
  3. Proper spacing maintained between all generations

Learn more about multi-row layout →

Display Properties in Nodes (default: []): Comma-separated properties to show in nodes (e.g., status, priority)

Show Node Tooltips (default: true): Display property tooltips on hover

Tooltip Width (default: 255px, range: 150-500px): Max tooltip width

Property Display

Hide Empty Properties (default: true): Hide null/undefined values in tooltips and previews

Hide Underscore Properties (default: true): Hide properties starting with _

Zoom: Hide Frontmatter by Default (default: false): Start zoom with frontmatter hidden

Zoom: Hide Content by Default (default: false): Start zoom with content hidden

Node Colors

Default Node Color (default: #e9f2ff): Color when no rules match (hex, HSL, or named CSS)

Color Rules: Conditional colors based on frontmatter

  • Expression: JavaScript returning true/false
  • Color: CSS color to apply
  • Enabled: Toggle on/off
  • Order: ↑/↓ to reorder (first match wins)

Examples:

Status === 'Active'  → #22c55e (green)
type === 'project' → #3b82f6 (blue)
Array.isArray(tags) && tags.includes('important')#f59e0b (orange)

Learn more →

Graph Filtering

Filter Expressions: Show only nodes matching ALL expressions (one per line)

  • Access frontmatter properties directly
  • Source node always shown
  • Apply on blur or Ctrl/Cmd+Enter

Examples:

Status === 'Active'
type === 'project'
Array.isArray(tags) && tags.includes('important')

Filter Presets: Named filters for quick access

  • Use command "Toggle Graph Filter (Preset Selector)"
  • Each preset has name and expression

Pre-fill Filter Preset: Auto-fill filter on graph open

  • Filter Expressions: Always applied, can't be cleared
  • Pre-fill Preset: Initial suggestion, can be modified/cleared

Learn more →

Indexing

Index and Assign Properties to All Files: Manually scan vault and update relationships

When to use:

  • After changing property names
  • First-time plugin setup
  • Relationships out of sync
  • After bulk imports

⚠️ May take time for large vaults

Directory Scanning

Default: ["*"] (scan all)

Options:

  • * - Scan entire vault
  • Specific paths - Only scan those directories and subdirectories

Examples:

  • ["*"] - Entire vault
  • ["Projects"] - Only Projects/ and subdirectories
  • ["Projects", "Notes/Work"] - Both directories

Quick Actions: Reset to scan all directories

Direct Relationship Properties

Parent Property (default: Parent): Property name for parent references

Parent: "[[parent-note]]"

Children Property (default: Child): Property name for children references

Child: ["[[child-1]]", "[[child-2]]"]

Related Property (default: Related): Property name for related files

Related: ["[[note-2]]", "[[note-3]]"]

Prioritize Parent Property (default: ""): Optional property to specify which parent to prioritize in hierarchy graphs

PriorityParent: "[[preferred-parent]]"
  • When a node has multiple parents, use this property to choose which one is used in hierarchy views
  • The value should match one of the parent names from the Parent property
  • If not set or the specified parent isn't found, uses the first available parent
  • Works for all nodes in the graph, not just the current one

Auto-Link Siblings (default: true): Automatically mark siblings as related. See Bidirectional Sync for details.

Frontmatter Propagation

Propagate Frontmatter to Children (default: false): Auto-propagate changes to children recursively

Ask Before Propagating Frontmatter (default: false): Show confirmation modal before propagating

Excluded Propagated Properties (default: ""): Comma-separated properties to exclude (e.g., Status, Priority)

  • Relationship properties always excluded
  • Prioritize Parent property always excluded

Propagation Debounce Delay (default: 1000ms, range: 100-10000ms): Delay before propagating

Bases View

Show 'All' Relationship Views (default: false): Add recursive relationship view options

  • When enabled, adds "All Children", "All Parents", and "All Related" options to the Bases view dropdown
  • These views recursively traverse relationships to show all connected nodes
  • "All Children" shows all descendants (children, grandchildren, etc.)
  • "All Parents" shows all ancestors (parents, grandparents, etc.)
  • "All Related" shows all nodes connected via the related property
  • Each view displays a count of nodes found (e.g., "All Children (15)")

View Type (default: cards): Choose how data is displayed in Bases views

  • Cards: Visual cards in a grid layout - ideal for visual browsing (recommended)
  • Table: Traditional table with rows and columns - best for data-heavy views
  • List: Simple list format - minimal and compact display

Enable Archived Filtering (default: false): Split files into "Archived" and "Active" sections

Archived Property Name (default: Archived): Property marking files as archived

Default Included Properties (default: []): Comma-separated properties as columns (e.g., status, priority, tags)

  • file.name always shown first

Custom Formulas (default: ""): YAML defining sort formulas (content AFTER formulas:)

Example:

  _priority_sort: |-
[
["Very High", 1],
["High", 2],
["Medium", 3],
["Low", 4],
["null", 5]
].filter(value[0] == Priority.toString())[0][1]

Custom Sort Configuration (default: ""): YAML defining sort rules (content AFTER sort:)

Example:

      - property: formula._priority_sort
direction: ASC
- property: file.mtime
direction: DESC

Path-Based Inclusion Rules: Add extra columns for specific directories

  • Path: Directory path (startsWith matching)
  • Included Properties: Comma-separated additional columns
  • Enabled: Toggle on/off
  • Order: ↑/↓ to reorder (first match wins)

Column order: file.name → default properties → path-specific properties

Learn more →

Node Creation Shortcuts

Zettel ID Property (default: _ZettelID): Property for unique timestamp ID (format: YYYYMMDDHHmmss)

How node creation works:

  1. New node in same folder as source
  2. Inherits frontmatter (except excluded)
  3. New Zettel ID generated
  4. Bidirectional relationships established
  5. Only for files in indexed directories

Learn more →

Automatic Title Property

Configure automatic title property assignment for cleaner display in Graph and Bases views.

First-Time Setup

On first plugin use, a setup modal appears asking you to:

  1. Enable: Automatically add title properties to all indexed files
  2. Disable: Use raw file names instead (no title properties added)
  3. Decide Later: Keep the modal appearing on each startup until you decide

Recommendation: Before enabling, configure excluded directories to skip templates, daily notes, or other directories where automatic titles aren't needed.

Settings

Title Property Mode (default: Not configured): Controls automatic title property behavior

  • Enabled: Adds title properties to files automatically. Bases view displays these titles.
  • Disabled: No title properties added. Bases view uses raw file names (file.name).
  • Not Configured: Shows setup modal on startup.

Title Property Name (default: Title): Property name for auto-assigned display title

  • Format: [[path/to/file|DisplayName]] - clickable in Bases view
  • Display name computed from filename with parent prefix stripped
  • Example: "Parent - Child.md" with parent "Parent" → [[Parent - Child|Child]]
  • Files without parents get their basename as the display name
  • Updated automatically when parent relationships change

Exclude Directories from Title (default: ""): Comma-separated directory paths to exclude

  • Files in these directories won't receive automatic title properties
  • Use for templates, daily notes, or other directories where titles aren't needed
  • Examples: Templates, Daily Notes, Archive/Old
  • Matches directory paths (files in subdirectories are also excluded)

Behavior Summary

ModeTitle PropertiesGraph ViewBases View
EnabledAdded to filesStrips prefixesUses Title property
DisabledNot addedStrips prefixesUses file.name

Note: Graph view always strips parent prefixes from node labels regardless of the title property mode setting.

Excluded Properties

Default Excluded Properties (default: ["Parent", "Child", "Related", "_ZettelID"]): Always excluded when creating nodes

Path-Based Exclusion Rules: Exclude additional properties for specific directories

  • Path: Directory path (startsWith matching)
  • Excluded Properties: Comma-separated additional exclusions
  • Enabled: Toggle on/off
  • Order: ↑/↓ to reorder (first match wins)

Examples:

  • Projects/status, progress
  • Daily Notes/date, weekday
  • Templates/template-version

Learn more →

Hotkeys

All commands support custom hotkey assignment.

View all available commands and recommended hotkeys →

Performance Tips

For large vaults:

  1. Limit directory scanning
  2. Reduce recursion depth
  3. Disable animations (0ms)
  4. Use filter expressions
  5. Hide tooltips
  6. Minimize displayed properties

Resetting Settings

  1. Close Obsidian
  2. Navigate to <vault>/.obsidian/plugins/nexus-properties/
  3. Delete or rename data.json
  4. Restart Obsidian

Next Steps