Breaking changes in v2.0

v2.0 poster

  • Take your own time in migrating to v2.0. This release is in a separate branch so technically you can still use old NvChad.

  • To use v2.0, you have to delete all old Neovim dirs (backup custom dir) and then re-install NvChad again


  • This release uses lazy.nvim instead of packer.nvim for plugin management.
  • The M.plugins variable in chadrc expects a string now instead of table.
  • The string should be path of your file which returns a table, example : custom/plugins.lua
--  before 
M.plugins = require "custom.plugins"

--  now
M.plugins = "custom.plugins"

  • Rename your custom plugins dir to something else, like configs etc. It shouldnt be "plugins" (as per our example) and update the path in your custom plugins table.

  • Also old plugin syntax has some slight changes now (as per lazy.nvim's syntax)

-- before
["some plugin" ] = { options } 
-- now
  "some plugin",

Override opts

  • override_opts which was used to overridin default plugin configs is now opts

NvChad ui options

  • These options can now be directly changed from chadrc file
-- before 
["NvChad/ui"] = {
     override_opts = {
         statusline = {
             separator_style  = "round" 

-- now 
M.ui = {
    statusline = {
         separator_style = "round"

Removed Alpha-nvim

  • Its replaced by our own dashboard module which has a simple config & is lightweight.
  • Check the NvDash config in the default_config file

Removed commands & mappings

Some mappings and commands have been removed. However their functions still exist, just make your own commands/mappings for them. Read our api functions docs.

Removed commands

  • Tbufpick , TbufLeft, TbufRight

Removed mappings

  • \ (to trigger tbufpick).
  • leader + tt (for toggling themes)