explaingit

lewisjellis/awesome-lua

4,502Audience · developerComplexity · 1/5Setup · easy

TLDR

A curated reference list of notable Lua packages and learning resources, organized by category so you can quickly find the right library for game scripting, web backends, or embedding Lua in other apps.

Mindmap

mindmap
  root((awesome-lua))
    What It Is
      Curated link list
      Lua ecosystem index
    Categories
      Game engines
      Web frameworks
      Testing tools
    Resources
      Tutorials and books
      Community links
      Style guides
    Use Cases
      Find Lua libraries
      Choose interpreter
      Learn Lua
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Find a Lua web framework like OpenResty when building a high-performance HTTP server with Nginx as the runtime.

USE CASE 2

Discover LOVE 2D or Corona SDK as a Lua game engine for building 2D games with a lightweight scripting layer.

USE CASE 3

Locate a LuaRocks-compatible testing framework when adding unit tests to an existing Lua project.

Tech stack

Lua

Getting it running

Difficulty · easy Time to first run · 5min

In plain English

This is a curated reference list for the Lua programming language, collecting notable packages and learning resources in one place. Lua is a lightweight scripting language often embedded inside larger applications, video games, and networking tools. The list is part of the broader "awesome" collection of similar reference pages on GitHub. The packages section is organized into roughly thirty categories. These cover the practical range of what developers use Lua for: interpreters and alternative implementations of the language itself, the LuaRocks package manager, build tools, debugging and profiling tools, code editors and IDE plugins, utility libraries, game engines (including LOVE 2D and Corona SDK), web and networking platforms (including OpenResty, which runs Lua inside the Nginx web server), testing frameworks, JSON and other parsing tools, cryptography, database client libraries, and more. The resources section lists community links, official and unofficial references, style guides, tutorials, video talks, and books. The README notes a benchmark observation: moving from LuaJIT (the fast just-in-time compiler) down through slower runtime environments drops performance by roughly a factor of six at each step, which is useful context when choosing an interpreter for a project. This repository does not contain runnable code. It is a maintained index of external links, organized for people who already work with Lua or are deciding whether to use it for a project. Finding the right tool for a specific use case, such as game scripting, network proxying, or embedding a scripting layer into a C++ application, is the main purpose of browsing this list.

Copy-paste prompts

Prompt 1
Using the awesome-lua list as a guide, which Lua libraries should I use to build a REST API backend with PostgreSQL support, and what does a minimal OpenResty example look like?
Prompt 2
Which Lua testing frameworks does awesome-lua list, and how do I set up busted to run unit tests for a LuaRocks package?
Prompt 3
I want to embed Lua as a scripting language in a C++ game engine, which libraries from awesome-lua should I start with, and what does a minimal C API integration look like?
Prompt 4
Based on the awesome-lua performance notes, when should I choose LuaJIT over standard PUC-Rio Lua for a performance-critical application?
Open on GitHub → Explain another repo

← lewisjellis on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.