lua-projects

Guide idiomatic Lua 5.4 configuration, plugin, and module development with tooling recommendations.

1|Updated Mar 20, 2026
One-click install
npx skills add https://github.com/kaynetik/skills --skill lua-projects
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lua-projects
Source: https://github.com/kaynetik/skills/tree/main/lua-projects
Command: npx skills add https://github.com/kaynetik/skills --skill lua-projects

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Provides clear, opinionated guidance to eliminate inconsistent Lua style, tooling, and module patterns across Neovim plugin ecosystems and SketchyBar configurations, making projects easier to maintain, debug, and extend.

Core Features & Use Cases

  • Formatting & Linting: Recommendations for StyLua and Selene configurations to enforce consistent style and catch common issues.
  • Language Server & Type Hints: Guidance for LuaLS setup and EmmyLua-style annotations to improve diagnostics and editor UX.
  • Project Patterns & Testing: Module patterns, init.lua conventions, safe require patterns, Neovim/LazyVim layout suggestions, SketchyBar conventions, and testing advice using Busted and plenary.
  • Use Case: Convert a scattered Neovim configuration into a LazyVim-compatible layout with StyLua formatting, Selene linting, LuaLS workspace settings, and a test harness for plugin modules.

Quick Start

Ask for a tailored StyLua, Selene, and LuaLS configuration and a recommended project layout for your Neovim or SketchyBar repository.

Frequently Asked Questions about lua-projects

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up StyLua, Selene, and LuaLS for a Neovim configuration?

You can convert scattered Neovim files into a LazyVim-compatible layout by applying init.lua conventions, safe require patterns, and module structure. This Skill provides layout suggestions to make your Neovim repository maintainable and easy to extend.

What's the best way to write idiomatic Lua for SketchyBar plugins?

Writing idiomatic Lua for SketchyBar involves following SbarLua conventions, safe module patterns, and consistent naming. This Skill provides opinionated guidance to eliminate inconsistent style and ensure your SketchyBar items are easy to debug.

How do I configure Selene linting for a Lua 5.4 project?

Configuring Selene linting for a Lua 5.4 project requires applying specific rules to catch common issues without false positives. This Skill recommends Selene configurations that integrate cleanly with your Lua toolchain.

Does this Lua toolchain guidance support testing with Busted and plenary?

Yes, this Lua toolchain guidance supports testing with Busted and plenary. It provides advice on setting up a test harness for your plugin modules to ensure your Neovim and Lua 5.4 projects remain reliable.

Why should I use EmmyLua-style annotations in my Neovim plugins?

You should use EmmyLua-style annotations in Neovim plugins to improve LuaLS diagnostics and editor UX. This Skill guides you through adding type hints that make your Lua code easier to maintain and debug.