CandyVim Neovim Configuration
An Eye Candy Neovim config built to work most efficiently with Frontend Development
This is based on Ecovim with a lot of useless eye candy thrown in to demonstrate how useful Neovim is even loaded up with candy.
[Note:] the default namespace for the Lazyman configuration is now ecovim
which is an enhanced version of CandyVim
.
Features
- Configured for TypeScript Development (React.js, Next.js, Vue.js, Angular, Node.js etc.)
- Great default theme: Tokyonight
- Lazy loaded via lazy.nvim
- Highly performant (90ms load time)
- Extendable LSP configuration via mason.nvim
- Support for :robot: AI: ChatGPT, GitHub Copilot, Codeium and Tabnine
- Support for TailwindCSS with highlighted colors
- JSON autocompletion for most popular Frontend configs
- NPM packages autocompletion in package.json
- Internal Jest testing and Coverage support
- Debugging with nvim-dap (works with React.js & React Native)
- Automatic Treesitter-based folding with imports folded by default
- Current code context via nvim-navic
- Beautiful and functional custom statusline built with galaxyline.nvim
- Git management with Lazygit, custom telescope commits view with git-delta, gitsigns & diffview, custom git blame
And of course usage of telescope, nvim-tree, barbar, cmp, treesitter, blankline & more!
Screenshots
Dashboard
Overview
Installation
See the Install tab for installation instructions.
Configuration
To change CandyVim related config use the config/CandyVim.lua
file.
To change vim settings use the config/options.lua
file.
To change plugin related settings use the specific plugins/[name].lua
file. Some of the plugin config can be set up during plugin installation in config/plugins.lua
file, where you can add new plugins.
Keybindings
See the Keymaps tab for details on CandyVim key bindings.
Comma (,) is the default Leader key.
Check out the which-key
menu and keybindings.lua
for most used maps.
Performance
Measured on M1.
CandyVim started in 91.13ms