diff --git a/lua/plugins.lua b/lua/plugins.lua
index 555728664ad22abafb25f57bba974e28b0c4e19d..1b0a8a2ce0a7fe19899a70d3bcc93ed4c2f6195a 100644
--- a/lua/plugins.lua
+++ b/lua/plugins.lua
@@ -1,38 +1,10 @@
 return {
-  {
-    "nvim-neo-tree/neo-tree.nvim",
-    branch = "v3.x",
-    dependencies = {
-      "nvim-lua/plenary.nvim",
-      "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
-      "MunifTanjim/nui.nvim",
-      -- "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information
-    }
-  },
-  { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate", },
-  {
-    "nvim-neo-tree/neo-tree.nvim",
-    branch = "v3.x",
-    lazy=false,
-    dependencies = {
-      "nvim-lua/plenary.nvim",
-      "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
-      "MunifTanjim/nui.nvim",
-      -- "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information
-    }
-  },
-  { "nvim-telescope/telescope.nvim", tag = "0.1.5", dependencies = { "nvim-lua/plenary.nvim" } },
   { "nvim-tree/nvim-web-devicons" },
   --	{ "tanvirtin/vgit.nvim", requires = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons" }, },
   { "williamboman/mason.nvim" },
   { "ms-jpq/coq_nvim" },
   { "vijaymarupudi/nvim-fzf" },
   { "eandrju/cellular-automaton.nvim" },
-  {
-    "m4xshen/hardtime.nvim",
-    dependencies = { "MunifTanjim/nui.nvim", "nvim-lua/plenary.nvim" },
-    opts = {}
-  },
   { "nvim-lua/plenary.nvim" },
   { "f-person/git-blame.nvim" },
   { "airblade/vim-gitgutter" },
@@ -41,41 +13,7 @@ return {
     dependencies = { "nvim-telescope/telescope.nvim" }
   },
   { "gaborvecsei/usage-tracker.nvim" },
-  {
-    "goolord/alpha-nvim",
-    config = function ()
-      require'alpha'.setup(require'alpha.themes.dashboard'.config)
-    end
-  },
-  {
-    "kylechui/nvim-surround",
-    version = "*", -- Use for stability; omit to use `main` branch for the latest features
-    event = "VeryLazy",
-    config = function()
-      require("nvim-surround").setup({
-	-- Configuration here, or leave empty to use defaults
-      })
-    end
-  },
-  {
-    "folke/which-key.nvim",
-    event = "VeryLazy",
-    init = function()
-      vim.o.timeout = true
-      vim.o.timeoutlen = 300
-    end, opts = { }
-  },
   { "windwp/nvim-autopairs", event = "InsertEnter", opts={} }, 
   { "nvim-lualine/lualine.nvim", dependencies = { "nvim-tree/nvim-web-devicons" }, lazy=false },
   { "sudormrfbin/cheatsheet.nvim", dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/popup.nvim", "nvim-lua/plenary.nvim" } },
-  {
-    "romgrk/barbar.nvim",
-    dependencies = {
-      "lewis6991/gitsigns.nvim", -- OPTIONAL: for git status
-      "nvim-tree/nvim-web-devicons", -- OPTIONAL: for file icons
-    },
-    init = function() vim.g.barbar_auto_setup = false end,
-    opts = { },
-    version = "^1.0.0", -- optional: only update when a new 1.x version is released
-  },
 }
diff --git a/lua/plugins/alpha-nvim.lua b/lua/plugins/alpha-nvim.lua
new file mode 100644
index 0000000000000000000000000000000000000000..66bd250b147a438fa19b12efb7a7059177cd3d25
--- /dev/null
+++ b/lua/plugins/alpha-nvim.lua
@@ -0,0 +1,6 @@
+return {
+	"goolord/alpha-nvim",
+	config = function ()
+		require'alpha'.setup(require'alpha.themes.dashboard'.config)
+	end
+}
diff --git a/lua/plugins/barbar.lua b/lua/plugins/barbar.lua
new file mode 100644
index 0000000000000000000000000000000000000000..89c0de96d6c2dd659f10b40e2249cd432857025c
--- /dev/null
+++ b/lua/plugins/barbar.lua
@@ -0,0 +1,10 @@
+return {
+	"romgrk/barbar.nvim",
+	dependencies = {
+      "lewis6991/gitsigns.nvim", -- OPTIONAL: for git status
+      "nvim-tree/nvim-web-devicons", -- OPTIONAL: for file icons
+  },
+  init = function() vim.g.barbar_auto_setup = false end,
+  opts = { },
+    version = "^1.0.0", -- optional: only update when a new 1.x version is released
+}
diff --git a/lua/plugins/catppuccin.lua b/lua/plugins/catppuccin.lua
new file mode 100644
index 0000000000000000000000000000000000000000..82f30b41c66e6081d0814bcdfe60c4aae53e85b4
--- /dev/null
+++ b/lua/plugins/catppuccin.lua
@@ -0,0 +1,9 @@
+return {
+  "catppuccin/nvim",
+  name = "catppuccin",
+  priority = 1000,
+  config = function ()
+    require('catppuccin').setup({ flavour="frappe" })
+    vim.cmd.colorscheme "catppuccin"
+  end
+}
diff --git a/lua/plugins/neotree.lua b/lua/plugins/neotree.lua
new file mode 100644
index 0000000000000000000000000000000000000000..b1fbfd5a071dcd1d0e6ace8a648bde97653f7499
--- /dev/null
+++ b/lua/plugins/neotree.lua
@@ -0,0 +1,11 @@
+return {
+  "nvim-neo-tree/neo-tree.nvim",
+  branch = "v3.x",
+  lazy=false,
+  dependencies = {
+    "nvim-lua/plenary.nvim",
+    "nvim-tree/nvim-web-devicons", -- not strictly required, but recommended
+    "MunifTanjim/nui.nvim",
+    -- "3rd/image.nvim", -- Optional image support in preview window: See `# Preview Mode` for more information
+  }
+}
diff --git a/lua/plugins/nvim-surround.lua b/lua/plugins/nvim-surround.lua
new file mode 100644
index 0000000000000000000000000000000000000000..a2c0b8c4525aacb2576b40bd2fceccdc25d5a4aa
--- /dev/null
+++ b/lua/plugins/nvim-surround.lua
@@ -0,0 +1,10 @@
+ return {
+  "kylechui/nvim-surround",
+  version = "*", -- Use for stability; omit to use `main` branch for the latest features
+  event = "VeryLazy",
+  config = function()
+  require("nvim-surround").setup({
+  -- Configuration here, or leave empty to use defaults
+  })
+  end
+}
diff --git a/lua/plugins/telescope.lua b/lua/plugins/telescope.lua
new file mode 100644
index 0000000000000000000000000000000000000000..83b135b0360ee105c2ffd47a5a2e83248c906cd9
--- /dev/null
+++ b/lua/plugins/telescope.lua
@@ -0,0 +1,4 @@
+return {
+	'nvim-telescope/telescope.nvim', tag = '0.1.5',
+	dependencies = { 'nvim-lua/plenary.nvim' }
+}
diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua
new file mode 100644
index 0000000000000000000000000000000000000000..c4e24cdeb39650550c6136c08f0ed8b20cdf917a
--- /dev/null
+++ b/lua/plugins/treesitter.lua
@@ -0,0 +1 @@
+return { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate", }
diff --git a/lua/plugins/which-key.lua b/lua/plugins/which-key.lua
new file mode 100644
index 0000000000000000000000000000000000000000..adcfa0b57512ed4f1ed98db7833be3fc3c61f65c
--- /dev/null
+++ b/lua/plugins/which-key.lua
@@ -0,0 +1,8 @@
+return {
+	"folke/which-key.nvim",
+	event = "VeryLazy",
+	init = function()
+		vim.o.timeout = true
+		vim.o.timeoutlen = 300
+	end, opts = { }
+}