Guide: Structuring Lua plugins

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

Stream - Scalable APIs for Chat, Feeds, Moderation, & Video.
Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.
getstream.io
featured
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com
featured
  1. nvim

    🍨 Soothing pastel theme for (Neo)vim

    I wanted to make a post here but I get shadow banned for not having enough reddit karma :< (I used these to make catppuccin.nvim startup in 1ms)

  2. Stream

    Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.

    Stream logo
  3. nvim-dap

    Debug Adapter Protocol client implementation for Neovim

    It's not obvious from the website, but this is the blog of GitHub user @mfussenegger, who is a Neovim core member, one of the primary maintainers of Neovim's LSP client implementation, and the other of several excellent plugins.

  4. nvim-jdtls

    Extensions for the built-in LSP support in Neovim for eclipse.jdt.ls

    It's not obvious from the website, but this is the blog of GitHub user @mfussenegger, who is a Neovim core member, one of the primary maintainers of Neovim's LSP client implementation, and the other of several excellent plugins.

  5. nvim-lint

    An asynchronous linter plugin for Neovim complementary to the built-in Language Server Protocol support.

    It's not obvious from the website, but this is the blog of GitHub user @mfussenegger, who is a Neovim core member, one of the primary maintainers of Neovim's LSP client implementation, and the other of several excellent plugins.

  6. persistence.nvim

    💾 Simple session management for Neovim

    I like the idea of a "config" module. Plugins like persistence and mason.nvim have it, they allow you to set variables without calling the main module.

  7. mason.nvim

    Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters.

    I like the idea of a "config" module. Plugins like persistence and mason.nvim have it, they allow you to set variables without calling the main module.

  8. impatient.nvim

    Discontinued Improve startup time for Neovim

    :lua vim.pretty_print(vim.mpack.decode(vim.mpack.encode({some = { thing = false }}))) used by impatient.nvim

  9. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  10. vim-illuminate

    illuminate.vim - (Neo)Vim plugin for automatically highlighting other uses of the word under the cursor using either LSP, Tree-sitter, or regex matching.

    +1, I avoided .setup in vim-illuminate and had a github comment explaining why it started and the alternative I went with, https://github.com/RRethy/vim-illuminate/issues/112. Got a lot of push-back on reddit for that. Happy to see some others dislike that useless convention.

  11. leap.nvim

    Neovim's answer to the mouse 🦘

    +1. I've already taken the first step.

  12. neovim-plugin

    I'm pretty sure we got started down the .setup road because of this article by norcalli a few years ago. It was published when plugins started using Lua and suddenly I went from seeing one or two plugins using .setup to literally every single plugin use it.

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

  • Neovim for beginners

    20 projects | dev.to | 30 Sep 2024
  • What are some plugins that you can't live without?

    16 projects | /r/neovim | 4 Dec 2023
  • What IDEA or Vscode feature/function you want to have in neovim eco-system?

    16 projects | /r/neovim | 28 Jun 2023
  • Editing init.lua with lua_ls on gives "Undefined global : vim" ?

    3 projects | /r/neovim | 27 Jun 2023
  • Set it and forget it plugins?

    16 projects | /r/neovim | 27 Jun 2023

Did you know that Lua is
the 18th most popular programming language
based on number of references?