A simple notepad in the VS Code bottom panel.
Two textareas side by side: one per workspace, one shared across all your VS Code windows.
No formatting, no folders, no toolbars — just textareas that auto-save.
VS Code has no built-in scratchpad. Existing note extensions either store notes globally (same notes in every workspace) or are overcomplicated with folders, markdown preview, and toolbars. This extension gives you both: a per-project notepad on the left and a global scratchpad on the right that stays in sync across every VS Code window.
- Two textareas, two scopes — left is per-workspace, right is global (shared across all your VS Code windows)
- Real-time cross-window sync — type into the global pane in one window, see it update live in every other open window
- Draggable splitter — resize the two panes; position is remembered per project
- Auto-save — saves automatically on every keystroke (debounced 200ms), no manual save needed
- Theme integration — matches your VS Code colors and editor font automatically
- Zero config — open the Notes tab and start typing
- Tab support — Tab key inserts a tab character instead of switching focus
- Untrusted workspaces — left (workspace) notes are read-only; the global pane stays editable
- State preservation — scroll position and cursor preserved when the panel is hidden and shown
- Accessible splitter — focusable separator with
Arrow/Home/Endkeyboard support - Lightweight — no dependencies, no frameworks, no bloat
- Open the Notes tab in the bottom panel (next to Terminal, Problems, etc.)
- Type into the left textarea for notes scoped to the current workspace.
- Type into the right textarea for global notes shared across every open VS Code window.
- Drag the separator between the two panes to resize. The position is saved per workspace.
- Open a second VS Code window — the right pane stays in sync with the first.
Tip: If no folder is open, the panel shows "Open a folder to use Notes" — the panel always requires a workspace.
- Workspace notes are stored as
notes.txtin VS Code's per-workspace storage directory (context.storageUri). - Global notes are stored as
notes-global.txtincontext.globalStorageUri, which resolves to the same path for every VS Code window of the current user. AFileSystemWatcheron that file relays changes to other windows in real time, with self-write echo suppression so your own typing doesn't bounce back. - Splitter ratio is persisted per workspace via
workspaceState. - All file I/O uses
vscode.workspace.fs, so the extension works seamlessly with VS Code Remote (SSH, WSL, Containers). Cross-window sync of the global pane works among windows that share the same host (locally, or attached to the same remote). - When two windows write to the global pane simultaneously, the last writer wins.