Modern Neovim — init.lua

Craft a modernized development environment with Neovim.

6 min readJan 4, 2023
Modern Neovim — init.lua

We will configure Neovim into a full-blown development environment using the latest features and plugins. With Neovim at the core of our development environment, we can become a more efficient developer.

This article is part of the Modern Neovim series.

The Neovim configuration files are available in this repository.

Getting Started

A Modern Development Environment

With the latest Neovim release and the availability of Lua-based plugins, Neovim can meet all our development needs for every programming language.

In this article, we are going to

  • Configure an isolated Neovim development environment.
  • Configure Neovim using the lazy.nvim plugin manager.
  • Leverage lazy.nvim to configure color schemes, startup screens, and install other plugins for fuzzy finding, version control, etc.

Isolated Environment

Just like the beginner series, we will create an isolated configuration environment for Neovim by leveraging the XDC_CONFIG_HOME, XDG_CACHE_HOME and XDG_CONFIG_DATA variables (:h xdg).




Software engineer, Data Science and ML practitioner.