Edward Hsieh2k downloadsSave and restore window layouts for Obsidian popout windows. Seamlessly manage multi-window popout workspaces.
Transform bare popouts into dedicated, distraction-free workstations.
Per-Window Layouts · Native Popout Activity Bars · Folder Spaces Synergy · Accent Identity Frames
Obsidian’s vibrant plugin ecosystem and flexible layouts make it the ultimate "Everything Notebook". But as our vaults grow, so does the clutter:
Window Spaces is an organic, seamless extension of Obsidian. Instead of cramming everything into a single main window, Window Spaces lets you isolate distinct workflows into dedicated Popout Work Cabins (Spaces).
With focus interception technology, popout activity bar engines, and per-window layout lifecycle management, your heavy plugins, complex splits, and research setups effortlessly transition into independent windows — letting you focus on one task at a time with zero clutter.
| Feature | Obsidian Native Workspaces | Window Spaces |
|---|---|---|
| Scope of Layout | Global (replaces main window & all splits) | Per-Window (isolates independent popout cabins) |
| Popout Sidebar & Activity Bar | ❌ None (bare popout windows only) | ✅ Full Native-like Left & Right Activity Bars |
| Visual Window Identity | ❌ Generic, indistinguishable windows | ✅ 4-Side Accent Frames, Logos, & Status Badges |
| Filesystem Context Isolation | ❌ Shows full vault file tree | ✅ Pairs with Folder Spaces for directory scoping |
| File Routing Protection | None; tabs and views across main/popout windows interfere with each other | ✅ Popout Routing: file opens from a popout sidebar go to that popout's center editor, explicit sidebar requests stay in that popout, and core (Outline, Backlinks) & community views (Grid Explorer) co-exist as independent multi-instances without interference |
| Dual Layout Collapse Guardrails | ❌ Closing the last tab destroys container and breaks split layout | ✅ Dual Guardrails: Closing last central tab converts in-place to New Tab; sidebar last tab deletion prevention |
| Auto-Save Granularity | Manual snapshot only | ✅ Per-Space Auto-Save (5s debounce + close snapshot) |
| Multi-Monitor Geometry | Prone to multi-DPI shifts | ✅ Pixel-precise restoration with off-screen protection |
| 🗺️ Quartz Studio Work Cabin | 📁 Folder-Scoped Project Cabin |
|---|---|
![]() |
![]() |
| Emerald-accented popout with Canvas, architecture notes, and a live status badge | Folder Space Explorer keeps the Apollo project tree focused inside its own cabin |
| 🧭 Popout Activity Bar | 🛡️ Dual Layout Guardrails |
|---|---|
![]() |
![]() |
| Native-style activity bar and view context menu in a dedicated popout | Three-column layout preserved: central last tab becomes New Tab while the sidebar shows its protection Notice |
| ⚙️ Activity Bar Settings | 🎨 Space Appearance |
|---|---|
![]() |
![]() |
| Drag-to-reorder controls and one-click import from the main window | Name, icon, accent color, and live preview for a distinctive Space identity |
| 🧩 Unified Panels & Switcher |
|---|
![]() |
| Folder Space Explorer on the left, Window Spaces panels in the center and right, plus a seven-space Project / Research / Writing switcher |
| 🧩 Sidebar Switcher |
|---|
![]() |
| The same panel docked in the main window's right sidebar: keyboard-driven switching across Project / Research / Writing sections |
Obsidian popout windows natively lack sidebars. Window Spaces injects a true, native-like Activity Bar & Collapsible Sidebar engine directly into popout windows:
borderBoxSize measurements with a 1px change-threshold guard to eliminate sidebar jitter, bounce-back, and slow border shrinkage.Pair Window Spaces with Folder Spaces to achieve Double Context Isolation:
Folder Space Explorer in the popout sidebar, locking the visible file tree strictly to a specific project subfolder (e.g. Projects/Apollo/).Never lose track of your open cabins across multiple displays:
Obsidian's architecture is natively designed around a single main window. Views opened from a popout window — and notes opened from a popout's own sidebar — frequently land in the main window, steal focus, or overwrite each other, because Obsidian resolves those requests globally. Window Spaces routes them to the window that made them, paired with comprehensive layout collapse defenses:
Add view to open a local instance of a view that is already open elsewhere.getLeavesOfType() keeps Obsidian's global results and ordering, and getLeftLeaf() / getRightLeaf() stay native so background plugin initialization keeps its main-sidebar destination. While a managed popout is focused, explicit getLeaf("left"/"right") / ensureSideLeaf() requests still select or create local sidebar leaves, and file opens from its sidebar target the editor area. Commands that reuse the first globally discovered leaf may still focus another window; use the popout's activity bar for an explicit local view. Turning off Route views to their popout windows restores native routing without disabling per-window note context. This switch cannot stop another plugin that performs the same kind of routing (for example Folder Spaces); such a plugin has to be disabled, or asked for an equivalent switch.file-open event broadcasts and workspace.getActiveFile(). An Outline in Window A strictly tracks the note active in Window A, while an Outline in Window B tracks Window B — completely eliminating cross-window context bleeding. During tab switches the live active note takes priority over the cached note, and the cache keeps a window's note context while a sidebar or another window holds focus.Add view lists registered views and already-open views, using a view's own display name when it only exposes one on its live instance (e.g. MAKE.md Navigator), instead of a prettified view type id.detach and converts the view in-place into an Obsidian native New Tab (empty view), preventing container destruction and split collapse.🔄 Auto-save on any Space. Modifications made during your work session are automatically saved in the background with a 5-second debounce and an instant snapshot on window close.Ribbon Icon or Hotkeys).📦 Archived).Window Spaces decides, for each way a window can be opened, how much it should take over. Both switches live under Settings → Window Spaces → New Popout Defaults:
| Space Workflow | Layout Composition | Primary Use Case |
|---|---|---|
| 🚀 Scoped Project Cabin (Folder Spaces Synergy) |
Popout Sidebar: Folder Space Explorer locked to /Projects/Apollo/+ Center: Pinned Canvas roadmap + active specs note |
Zero-clutter project workstation: Restricts file tree to project files only; file clicks route cleanly to the center editor. |
| 🗺️ Project Map & Workbench | Pinned Canvas/Base on the left + Project specs on the right | High-level system architecture, milestone planning, and active deliverables. |
| 🧠 Deep Research & Literature | Popout Activity Bar (Outline) + PDF reader / Literature note + Zettelkasten splits | Distraction-free academic reading, concept linking, and knowledge synthesis. |
| ✍️ Focus Writing & Showcase | Clean markdown editor + Rendered preview / CSS showcase | Deep long-form writing, technical documentation, and publishing workflows. |
| ⚙️ Dev & System Maintenance | Dataview queries + Configuration templates & checklists | Task reviews, vault maintenance, release checklists, and issue triage. |
main.js, manifest.json, and styles.css from the latest GitHub Release.window-spaces inside your vault: <vault>/.obsidian/plugins/window-spaces/.Ctrl/Cmd + Shift + N or drag any tab out).Ctrl/Cmd + P) and run Window Spaces: Save current Space.Window Spaces: Open as popup window.Click or Enter: Instantly launches the Space in a fresh popout window.Shift + Click or Shift + Enter: Restores the layout directly into the current window.... or right-click) to toggle Auto-save 🔄, rename, edit, or delete.| Action | Shortcut / Trigger | Description |
|---|---|---|
| Open Spaces Modal | Configurable via Hotkeys | Quick floating modal to switch or launch Spaces |
| Open in New Window | Enter / Single Click |
Spawns the highlighted Space in a new popout window |
| Apply to Current Window | Shift + Enter / Shift + Click |
Restores the selected Space into the active popout window |
| Quick Navigate | ↑ / ↓ Arrow Keys |
Move selection up or down within the list |
| Dismiss / Close | Escape |
Closes the modal or exits search focus |
Window Spaces harmonizes beautifully with heavy and canvas-like community plugins. For detailed integration patterns with Excalidraw, Excalibrain, Canvas, Dataview, and Notebook Navigator, check out our community guide:
📖 Full User Guide & Plugin Synergy Walkthrough
v1.13.0 or newer