Skip to content
@nvim-neorocks

Neorocks

nvim-neorocks

Neovim ❤️ LuaRocks

Neorocks aims at encouraging good software practice in the neovim plugin ecosystem,

One major addition in nvim compared to vim is the native support of an existing scripting language aka Lua, with numerous packages available (yaml/json loaders, testing libraries like busted etc)

This favors code reuse, a rare sight in vimscript land, and makes it possible for plugin to focus on their primary objective, without reinventing the wheel.

These dependencies can be installed via the historical Lua package manager www.luarocks.org. We want to encourage plugin authors to specify their plugin dependencies in the luarocks package format: aka rockspec (see the rocks.nvim rockspec for an example).

This allows to shift the burden of specifying plugin dependencies from the users to the plugin authors. The plugin author can change the plugin dependencies without breaking its users configurations. Fewer support issues it is a win-win ! And between our github action and our own repository of luarocks package definitions, it has never been easier to publish a package to luarocks.org.

We at neorocks want to promote the semantic versioning of plugins: instead of blindly cloning plugins from git with the hope the update does not break one's own config, pin the plugin version. For instance rocks.nvim asks you if you really want to update a plugin with a major version change.

We encourage plugin authors to test their plugins now that luarocks provides good testing libraries like busted. It has never been this easy to test your plugin using neovim as a lua interpreter with nlua.

Our member @mrcjkb also explains why entangling installation and configuration makes plugin manager work harder. He also published a guide on good practice for neovim plugin development.

Pinned Loading

  1. rocks.nvim rocks.nvim Public

    🌒 Neovim plugin management inspired by Cargo, powered by luarocks

    Lua 748 15

  2. luarocks-tag-release luarocks-tag-release Public

    GitHub workflow for automatically generating Luarocks releases from tags and running busted tests

    Lua 48 3

  3. sample-luarocks-plugin sample-luarocks-plugin Public

    An example of a luarocks plugin for Neovim.

    23

Repositories

Showing 10 of 28 repositories
  • rocks-binaries Public

    Prebuilt, autogenerated binaries required for `rocks.nvim`

    nvim-neorocks/rocks-binaries’s past year of commit activity
    Roff 7 0 5 0 Updated Dec 12, 2024
  • rocks-binaries-dev Public

    Prebuilt, autogenerated DEV binaries required for rocks.nvim

    nvim-neorocks/rocks-binaries-dev’s past year of commit activity
    Roff 4 0 0 0 Updated Dec 12, 2024
  • Robert Public

    Database [Update] this

    nvim-neorocks/Robert’s past year of commit activity
    Lua 10 GPL-3.0 0 1 0 Updated Dec 12, 2024
  • rocks Public

    An alternative frontend app for luarocks.org

    nvim-neorocks/rocks’s past year of commit activity
    Rust 33 MIT 1 36 (6 issues need help) 6 Updated Dec 11, 2024
  • nurr Public

    A repository for hosting auto-generated Neovim plugins and tree-sitter parsers for Luarocks.

    nvim-neorocks/nurr’s past year of commit activity
    Lua 32 MIT 6 7 1 Updated Dec 11, 2024
  • luarocks-tag-release Public

    GitHub workflow for automatically generating Luarocks releases from tags and running busted tests

    nvim-neorocks/luarocks-tag-release’s past year of commit activity
    Lua 48 AGPL-3.0 3 8 1 Updated Dec 11, 2024
  • neorocks Public

    Run busted tests with Neovim

    nvim-neorocks/neorocks’s past year of commit activity
    Nix 26 GPL-2.0 0 1 0 Updated Dec 11, 2024
  • rocks-git.nvim Public

    Use rocks.nvim to install plugins from git!

    nvim-neorocks/rocks-git.nvim’s past year of commit activity
    Lua 47 GPL-3.0 2 3 0 Updated Dec 9, 2024
  • rocks.nvim Public

    🌒 Neovim plugin management inspired by Cargo, powered by luarocks

    nvim-neorocks/rocks.nvim’s past year of commit activity
    Lua 748 GPL-3.0 15 50 (1 issue needs help) 2 Updated Dec 8, 2024
  • lz.n Public

    🦥 A dead simple lazy-loading Lua library for Neovim plugins.

    nvim-neorocks/lz.n’s past year of commit activity
    Lua 111 GPL-2.0 7 1 0 Updated Dec 8, 2024

Top languages

Loading…

Most used topics

Loading…