Replace the default file explorer in Obsidian with a clean two-pane interface featuring folder tree, tag browsing, file previews, keyboard navigation, drag-and-
Replace the default file explorer in Obsidian with a clean two-pane interface featuring folder tree, tag browsing, file previews, keyboard navigation, drag-and-
Read in your language: English • العربية • Deutsch • Español • فارسی • Français • Bahasa Indonesia • Italiano • Nederlands • Polski • Português • Português (Brasil) • Русский • ไทย • Türkçe • Українська • Tiếng Việt • 日本語 • 한국어 • 中文简体 • 中文繁體
Turn Obsidian into a fast, customizable notes browser with folders, tags, properties and shortcuts in one view. Visual previews. Full keyboard navigation. Dual-pane layout. Mobile optimized. Works with 100,000+ notes.
If you love using Notebook Navigator, please consider ☕️ Buying me a coffee or Sponsor on GitHub ❤️.
Coming from another app? Read the switching guides for Evernote, Apple Notes, Bear, OneNote and Day One.
Here is the official tutorial for learning and mastering Notebook Navigator: The video has subtitles in 21 languages.
Notebook Navigator is checked with TypeScript, ESLint with the official Obsidian ESLint plugin, Prettier, Vitest and a production build before changes are merged. The build must complete with zero errors and zero warnings.
Security checks run through CodeQL, with scan history in the CodeQL workflow runs. Current status is shown in the badges at the top of this page.
Notebook Navigator runs locally, but some features make documented HTTP requests for updates, downloads, and remote content. See section 11 - Network and Diagnostics Disclosure for the full list.
API Reference - Public API documentation. Covers metadata management, navigation control and event subscriptions for JavaScript/TypeScript developers.
Theming Guide - Guide for theme developers. Includes CSS class reference, custom properties, and theme examples for light and dark modes.
Startup Process - Plugin initialization sequence. Cold boot vs warm boot flows, metadata cache resolution, deferred cleanup, and content generation pipeline. Includes Mermaid diagrams.
Metadata Pipeline - Cache rebuild sequence, provider pipeline stages, and completion signals. Includes Mermaid diagrams.
Storage Architecture - Guide to storage containers (IndexedDB, Local Storage, Memory Cache, Settings). Data flow patterns and usage guidelines.
Rendering Architecture - React component hierarchy, virtual scrolling with TanStack Virtual, performance optimizations, and data flow.
Scroll Orchestration - How the plugin ensures accurate scrolling when tree structures change (tag visibility, settings, etc.)
Service Architecture - Business logic layer: MetadataService, FileSystemOperations, ContentProviderRegistry. Dependency injection patterns and service data flow.
| Key | Action |
|---|---|
| ↑/↓ | Navigate up/down in current pane |
| ← | In navigation pane: collapse or go to parent In list pane: switch to navigation pane |
| → | In navigation pane: expand or switch to list pane In list pane: switch to editor |
| Tab | In navigation pane: switch to list pane In list pane: switch to editor In search field: switch to list pane |
| Shift+Tab | In list pane: switch to navigation pane In search field: switch to navigation pane |
| Enter (macOS) F2 (Windows/Linux) |
Rename item inline in navigation pane or list pane |
| Enter | In navigation pane: open folder note on Windows/Linux by default (when enabled) In list pane: open selected file on all systems (when enabled) In search field: switch to list pane |
| Escape | In search field: close search and focus list pane |
| PageUp/PageDown | Scroll up/down in navigation pane and list pane |
| Home/End | Jump to first/last item in current pane |
| Delete Backspace |
Delete selected item |
| Cmd/Ctrl+A | Select all notes in current folder |
| Cmd/Ctrl+Click | Toggle notes selection |
| Shift+Click | Select a range of notes |
| Shift+Home/End | Select from current position to first/last item |
| Shift+↑/↓ | Extend selection up/down |
| Cmd/Ctrl+↑/↓ | Rearrange selected files up/down in manual sort mode |
Note: All keyboard shortcuts can be customized. See section 8 - Custom hotkeys for details on adding VIM-style navigation (h,j,k,l), alternate keys, and modifier combinations.
Many settings in Notebook Navigator display a sync toggle — a cloud icon that switches between "Enable sync" and "Disable sync". This controls where each setting is stored and whether it is shared across devices.
Obsidian plugins store their configuration in data.json, located at .obsidian/plugins/notebook-navigator/data.json inside your vault folder. When you use a sync service — such as Obsidian Sync, iCloud, GitHub, Dropbox, or Google Drive — this file is synchronized across all your devices along with the rest of your vault. Any setting saved to data.json will propagate to every device that syncs the vault.
When sync is enabled (default) for a setting, the value is saved to data.json and synchronized to all devices through your sync service.
When sync is disabled for a setting, the value is saved to Obsidian's local storage instead. Local storage is device-specific and is not included in vault sync. The setting will have its own independent value on each device. When you disable sync for a setting, the current value is copied to local storage on the current device, and the value is removed from data.json to prevent it from overriding local values on other devices.
If you do not use a sync service, the sync toggle has no practical effect since data.json is only stored locally.
Notebook Navigator has two search modes: filter search and Omnisearch. Switch between them using the up/down arrow keys or by clicking the search icon. Combine file names, properties, tags, dates, and filters in one query (e.g., meeting .status=active #work @thisweek).
Filters files by display name, alias, tags, properties, dates, folders,
No open issues yet, or sync has not completed.