whatisgithub

What is awesome-lua?

lewisjellis/awesome-lua — explained in plain English

Analysis updated 2026-06-26

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

In one sentence

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

What do people build with it?

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.

What is it built with?

Lua

How does it compare?

lewisjellis/awesome-luazhuzichu520/fluentuibadoo/chatto
Stars4,5024,5024,503
LanguageC++Swift
Setup difficultyeasymoderateeasy
Complexity1/53/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

So what is it?

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?

Frequently asked questions

What is awesome-lua?

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.

How hard is awesome-lua to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is awesome-lua for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.