Show the live graph view as your desktop wallpaper, slowly rotating, on Windows and Linux (X11).
English | 한국어
Show Obsidian's graph view as your desktop wallpaper. It is the real, live graph: new notes and links appear as you write, and the graph can slowly rotate, drift and "breathe".
| Platform | Status |
|---|---|
| Linux, X11 session | Supported. Needs python3 (installed by default on most distributions). |
| Windows 10 and 11 | Supported, experimental. Uses the built-in Windows PowerShell. The wallpaper is display-only, because the desktop icons layer receives the mouse. |
| Linux, Wayland session | Not supported: Wayland does not let apps place their windows on the desktop layer. |
| macOS | Not supported. |
Windows support is new. If the wallpaper does not appear or looks wrong, please open an issue with your Windows version.
Obsidian plugins cannot change how the operating system stacks windows, so the plugin starts a small helper process for the wallpaper window:
wallpaper-helper.py) marks the window as a desktop window through the standard EWMH window-manager hints, using libX11 directly.wallpaper-helper.ps1) moves the window into the desktop window behind the icons, the same technique other live-wallpaper tools use.The helper source code is part of this repository (src/helpers). It is bundled in main.js and written to the plugin folder (.obsidian/plugins/graph-wallpaper/) when the wallpaper starts. The helper stops when you turn the wallpaper off or quit Obsidian, and the window returns to normal.
Live motion drives the core graph view's renderer, which is not part of Obsidian's public API. If a future Obsidian version changes it, the motion stops while the wallpaper itself keeps working.
python3 on Linux, powershell.exe on Windows) to change the wallpaper window's properties, as described above.Download main.js, manifest.json and styles.css from the latest release into <vault>/.obsidian/plugins/graph-wallpaper/, then restart Obsidian and enable the plugin in Settings → Community plugins.
npm install
npm run dev # Rebuild main.js on change.
npm run build # Type-check and build main.js for release.