Repolode
nvim-neo-tree

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. 1

    Install the plugin with lazy.nvim (branch v3.x) alongside plenary.nvim and nui.nvim

  2. 2

    Optionally add nvim-web-devicons for file icons

  3. 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