A collection of ready-made Language Server Protocol configurations for connecting Neovim to many programming language servers.
nvim-neo-tree/neo-tree.nvim
A Neovim plugin for browsing the file system and other tree-like structures in sidebar, floating, or netrw-style layouts.
- Stars
- 5,646
- Forks
- 313
- Open issues
- 175
- Last commit
- 11 days ago
What is it?
Neo-tree is a Lua plugin for Neovim that provides a file explorer and a generic tree view. It can open as a left or right sidebar, a top or bottom split, a floating window, or inside the current window in netrw style. Besides the filesystem, it includes a buffers source listing open buffers and a git_status source showing git status as a tree with stage, unstage, revert and commit actions.
The plugin focuses on predictable sidebar behavior: other buffers cannot take over its window, it can follow the current file, and it can optionally use OS-level file watchers so the tree refreshes without manual reloads. Filesystem operations such as add, copy, move, rename and delete are available, along with clipboard sync across trees and file preview in floating windows or existing splits, including images via snacks.nvim or image.nvim.
Neo-tree requires Neovim 0.8 or later and depends on nui.nvim for UI components and plenary.nvim for backend utilities. Icons, LSP-aware file operations and window picking are optional integrations. Its configuration is exposed through a single setup() table and the :Neotree command.
Key features
- 01Sidebar, floating, top/bottom, and netrw-style window positions
- 02Filesystem browsing with add, copy, move, rename and delete actions
- 03Git status tree with stage, unstage, revert and commit commands
- 04Buffers list view and optional file-following behavior
- 05File preview in floating windows or existing splits, with image support
Use cases
- Browsing and managing project files from within Neovim without leaving the editor
- Reviewing and staging git changes in a tree view inside Neovim
- Switching between open buffers through a sidebar list
Quick start
- 1
Install the plugin with lazy.nvim (branch v3.x) alongside plenary.nvim and nui.nvim
- 2
Optionally add nvim-web-devicons for file icons
- 3
Open Neo-tree as a sidebar in Neovim
:Neotree
Things to know
- Requires Neovim 0.8 or later and depends on nui.nvim and plenary.nvim.
Topics
FAQ
- What is neo-tree.nvim?
- A Neovim plugin for browsing the file system and other tree-like structures in sidebar, floating, or netrw-style layouts. Neo-tree is a Lua plugin for Neovim that provides a file explorer and a generic tree view. It can open as a left or right sidebar, a top or bottom split, a floating window, or inside the current window in netrw style. Besides the filesystem, it includes a buffers source listing open buffers and a git_status source showing git status as a tree with stage, unstage, revert and commit actions.
- Is neo-tree.nvim free to use? What license does it have?
- neo-tree.nvim is open source under the MIT license. Check the license terms before using it in commercial products.
- Is neo-tree.nvim still maintained?
- Actively maintained. The last commit to neo-tree.nvim was on Oct 27, 2026.
- What can I use neo-tree.nvim for?
- Browsing and managing project files from within Neovim without leaving the editor Reviewing and staging git changes in a tree view inside Neovim Switching between open buffers through a sidebar list
- How do I install neo-tree.nvim?
- Install the plugin with lazy.nvim (branch v3.x) alongside plenary.nvim and nui.nvim Optionally add nvim-web-devicons for file icons Open Neo-tree as a sidebar in Neovim: :Neotree
- Where can I get neo-tree.nvim?
- The source code and installation instructions are on GitHub: https://github.com/nvim-neo-tree/neo-tree.nvim
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Vim plugin that provides local LLM-powered fill-in-the-middle code completion and instruction-based editing via a llama.cpp server.
A Neovim plugin for viewing, editing, and reviewing GitHub issues, pull requests, and discussions from inside the editor.
A snippet engine for Vim and Neovim that expands triggers into templates with tabstops, placeholders and Python-scripted logic.
Personal macOS and Linux dotfiles managing zsh, tmux, Neovim, Ghostty, and a Mise-driven bootstrap for a full dev environment.
A sidebar workbench plugin for DeepSeek Harness (DSH) with built-in file, Git, terminal, side chat and task pages, open to third-party extensions.