return {
    "nvim-tree/nvim-tree.lua",
    version = "*",
    lazy = false,
    dependencies = {
        "nvim-tree/nvim-web-devicons",
    },
    config = function()
        vim.g.loaded_netrw = 1
        vim.g.loaded_netrwPlugin = 1

        require("nvim-tree").setup {
            sort = {
                folders_first = true,
                sorter = "name"
            },
            filters = { custom = { "^.git$" } }
        }

        vim.keymap.set('n', '<leader>e', ":NvimTreeToggle<CR>", {silent = true, desc = "Open nvim-tree"})
        vim.keymap.set('n', '<leader><leader>h', ":NvimTreeCollapseKeepBuffers<CR>", { silent = true, desc = "Collapse nvim-tree keeping open buffers" })
        vim.keymap.set('n', '<leader><leader>e', ":NvimTreeFindFile<CR>", {silent = true, desc = "Go to currently open file in buffer or close"})
    end,
}