/LLS-Addons

Addons for use with Sumneko's Lua Language Server

MIT LicenseMIT

Lua Language Server Addons

Addons count

Welcome to the repository of addons for the Lua Language Server by sumneko!

This repository is a highly collaborative project, with the community contributing addons through pull requests. The goal is to provide a central location where the community can collaborate on creating addons. Addons are added to this repository as a git module, allowing each project to have its own fork-able repo. The addons in this repository can be fetched by the addon manager in the VS Code extension that communicates with the Lua Language Server in VS Code.

What is an Addon?

An addon is simply something that extends the functionality of the Lua Language Server. An addon could for example be definition files and settings. The definition files are written in Lua using the Lua Language Server's LuaCATS annotation system.

What should be an Addon?

  • An addon for a popular library/framework.

What should NOT be an Addon?

  • Definitions for a personal project (use workspace.library).
  • Definitions for proprietary software.

Anatomy of an Addon

Here is an example of what an addon could look like:

📂 MySnazzyAddon/
    ├──📜 info.json
    └── 📁 module/
        ├── 📁 library/
        └── 📜 config.lua

info.json

The info.json file contains some details about the addon such as the name and description. It also contains some additional metadata such as size and hasPlugin, but these values are generated automatically by the LLS-Addons-Action.

module

The module folder is the submodule that contains all the definition files and config.lua file - your addon.

Get Involved

As already said, this is a very collaborative project, so anyone is welcome to help out! To get started, please review the contribution guidelines. Your contributions are greatly appreciated and will help to make this project a valuable resource for the Lua community ❤️.