Where Does LazyVim Store Config and Data?
LazyVim lives in the standard Neovim XDG folders: config in ~/.config/nvim with state, data and cache beside it.
Last updated
LazyVim is a Neovim configuration, not a separate program, so it uses Neovim's own directories. Your settings and plugin specs live in ~/.config/nvim, while plugins, shada, sessions and logs spread across the data, state and cache homes.
That split decides what to version control. Back up the config folder in Git and treat the rest as disposable. Deleting state and cache is the standard fix for a sick install, and LazyVim rebuilds them on next launch.
Where LazyVim stores this, by platform
~/.config/nvim
Config home: init.lua plus lua/ plugin specs. Data lands in ~/.local/share/nvim, sessions and shada in ~/.local/state/nvim, logs and builds in ~/.cache/nvim. Wipe state and cache with Neovim closed to reset without losing config.
~/.config/nvim
Same XDG layout on Mac. The starter template clones straight into this folder. Back it up and any machine reproduces your editor in one pull plus a plugin sync.
%LOCALAPPDATA%\nvim
Windows equivalent of ~/.config/nvim. Data, state and cache follow Neovim's Windows mapping under local app data. Same rule applies: version the config, delete the rest when troubleshooting.
Frequently asked questions
how do i completely reset lazyvim
Back up ~/.config/nvim, then delete the share, state and cache nvim folders with Neovim closed. Relaunching reinstalls plugins from your specs. Your config stays untouched.
which lazyvim folders should i put in git
Only ~/.config/nvim. The share, state and cache trees hold downloaded plugins, sessions and logs that differ per machine. Add lockfile habits instead: commit lazy-lock.json so installs stay reproducible.
where are lazyvim log files
In the cache home, ~/.cache/nvim, including plugin manager logs. Check there when a plugin fails to install or update before reinstalling everything.
Notice an outdated path? Let us know.