A Minimal Neovim Configuration for TypeScript Development featuring Lazy.nvim, LSP, Tree-Sitter, Prettier, Guess-Indent

This page summarizes the projects mentioned and recommended in the original post on reddit.com/r/neovim

Our great sponsors
  • SonarLint - Clean code begins in your IDE with SonarLint
  • InfluxDB - Access the most powerful time series database as a service
  • ONLYOFFICE ONLYOFFICE Docs — document collaboration in your environment
  • CodiumAI - TestGPT | Generating meaningful tests for busy devs
  • lazy.nvim

    💤 A modern plugin manager for Neovim

    The configuration uses Lazy.nvim for neovim-specific package management. As I don't like unicode-emojis, I configured its UI to use ASCII-strings instead.

  • onedark.nvim

    One dark and light colorscheme for neovim >= 0.5.0 written in lua based on Atom's One Dark and Light theme. Additionally, it comes with 5 color variant styles

    It uses One-Light theme on Mac OS and Gruvbox otherwise. That's because I work on a Mac during the day and my personal machine runs GNU Guix System with XMonad which I have completely themed on Gruvbox.

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

  • gruvbox.nvim

    Lua port of the most famous vim colorscheme

    It uses One-Light theme on Mac OS and Gruvbox otherwise. That's because I work on a Mac during the day and my personal machine runs GNU Guix System with XMonad which I have completely themed on Gruvbox.

  • nvim-cmp

    A completion plugin for neovim coded in Lua.

    hrsh7th's nvim-cmp is used for auto-completion, as recommended by neovim/nvim-lspconfig.

  • formatter.nvim

    mhartington/formatter.nvim is used for automatic code formatting. Its configuration also shows how to use nvim_create_augroup and nvim_create_autocmd from Lua.

  • nvim-lspconfig

    Quickstart configs for Nvim LSP

    neovim/nvim-lspconfig is used for LSP configuration. In particular, lsp-zero.nvim is not needed. But in the configuration, the keybindings from both packages are linked and listed.

  • guess-indent.nvim

    Automatic indentation style detection for Neovim

    The fantastic nmac427/guess-indent.nvim package is used to automatically detect the indentation scheme when a file is opened.

  • InfluxDB

    Access the most powerful time series database as a service. Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.

  • telescope.nvim

    Find, Filter, Preview, Pick. All lua, all the time.

    nvim-telescope/telescope.nvim is loaded but I didn't bind it to any keys. Also, I'm not sure if I would really use it. To be honest, I don't like its UI. I would like it to better integrate and stick to the default Neovim-UI instead of creating some sort of modal. Personally, I'd first rather attempt to make :o more convenient; although, of course, Telescope has much more features than file navigation.

  • nvim-treesitter

    Nvim Treesitter configurations and abstraction layer

    nvim-treesitter/nvim-treesitter is leveraged for better syntax highlighting.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts