- Introduction
- Why nvimDev?
- Requirements
- Getting Started
- Custom Configuration
- Contributors
- Support
- Acknowledgements
Note: Installation and Contribution is right at the top of this page
Welcome to nvimDev – a sleek, fast, and highly customizable Neovim distribution started by
Priyanshu Ranjan, final-year student at IIT Kharagpur. 🌟
This project started as a quest for the perfect code editor. While many Neovim distros exist, none had the set of plugins or keybindings I wanted(ofc this is not possible), nor did they offer a code structure that was simple to configure and understand. So, after experimenting with and ultimately discarding two previous Neovim configurations, I took inspiration from those experiences to build this ultimate Neovim distribution. 🚀
Most Neovim distros are either too bloated or hard to customize. The code structure is often complex, making it difficult for users to add their own configurations. That’s where nvimDev shines – it’s built to be:
- 🔥 Lightweight – Takes minimal space and RAM.
- ⚡ Fast – With lazy loading, your experience remains buttery smooth, no matter how many plugins you use.
- 🎨 Aesthetic – Get a beautiful UI experience right out of the box.
- 🖱️ User-Friendly – Simplified keybindings that make navigation feel like second nature.
- 🛠️ Easy to Customize – The code structure is neat, with separate folders for plugin configurations and core settings. Make it your own with just a few tweaks!
Whether you’re an experienced Neovim user or just a beginner looking for a powerful code editor, nvimDev is made for you! The learning curve is smooth and once you get the hang of it, it’ll feel like home. 🏡
Stay tuned for frequent updates as this project is still under development. 🌱 And yes, it’s free and open-source, written in Lua, and runs smoothly on any Unix system. Fast and Easy Installation. Use it anytime anywhere.
To get started with nvimDev, you’ll need the following:
- Operating System: Linux/MacOS/WSL (Windows support coming soon)
- Neovim: Version 0.10.0+ (built with LuaJIT)
- Nerd Font: For enhanced UI
- Clipboard-Tool: Essential for integrating with the system clipboard
- Optional(but Recommended):
- Terminal: One with true color support (For better aesthetics)
- Ripgrep - Live grep telescope search (Fl)
If you're new to Neovim or looking for guidance, we highly recommend visiting the Wiki Section (Currently in Development Phase) for documentation. Beginners can find in-depth tutorials to help them get up and running, while advanced users will discover insights and tips to get the most out of nvimDev.
The folder structure of the project is explained in the v1.0.0 Release Notes, so you can easily understand how everything is organized.
After installing, you can start the project by typing 'nvim
' in your terminal. If you ever feel overwhelmed or need assistance with the keybindings, simply press <Space>
in normal mode to display all the important key mappings available to you.
Additionally, if you want to tweak the configuration to your liking or wish to contribute to the project, check out Guide to Getting Started
If you have any questions related to using Neovim, encounter issues, or wish to reach out to me for any other discussions about this project, please feel free to use the Discussion Forum available on the repository.
To create a custom configuration for Neovim, follow these steps:
-
Create a custom configuration folder:
Inside the Neovim configuration directory, typically located at
~/.config/nvim
, create a new folder for your custom configurations. You can name this folder anything you like, but for this example, we’ll name itcustom
.mkdir -p ~/.config/nvim/lua/custom
-
Create a custom init.lua file:
Inside the custom folder, create a new Lua file to hold your custom configurations. For example, create a file named my_config.lua:
touch ~/.config/nvim/lua/custom/my_config.lua
-
Edit your init.lua file:
Open the main init.lua file located in ~/.config/nvim/. Add the following line to ensure that Neovim loads your custom configuration:
require('custom.my_config')
-
Add your custom configurations:
Open the my_config.lua file and start adding your custom Neovim settings, mappings, and plugins as needed. For example:
-- Example custom configuration vim.o.number = true vim.o.relativenumber = true
-
Reload Neovim:
After making these changes, restart Neovim or source your init.lua to apply the new configuration:
:source ~/.config/nvim/init.lua
We extend our heartfelt gratitude for your invaluable contribution to our project! Your efforts play a pivotal role in elevating this project to greater heights.
If you like this project, please consider giving it a star ⭐ on GitHub – it helps the project grow and reach more people! Your support is much appreciated!
If you're interested in supporting the development of nvimDev further, please consider sponsoring this project. Your contributions will help cover expenses and enable more frequent updates and enhancements. Thank you for your support!
Thanks to Neovim for enabling the creation of a powerful and customizable terminal-based code editor.
A special thank you to the creators and maintainers of the plugins used in the repo, which have significantly improved the functionality and user experience of nvimDev.