Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-lua
A curated list of quality Lua packages and resources.
https://github.com/LewisJEllis/awesome-lua
Last synced: 1 day ago
JSON representation
-
Resources
-
Logging
- luasyslog - Log to syslog, based on LuaLogging.
-
Web/Networking Platforms
- OpenResty - A fast and scalable web application platform created by extending Nginx with Lua. Today's de-facto Lua web platform, used heavily by Cloudflare, Taobao, Tencent, and others.
- turbo - Event-driven, non-blocking, LuaJIT-based networking suite and framework, inspired by Tornado.
- Kepler Project - A collection of web-oriented projects using a common set of standards and components.
-
OpenResty
- OpenResty GitHub Organization - Home of the repositories for ngx_lua, ngx_openresty, and many related modules.
- Lapis - Full-stack framework for Lua and OpenResty. Like the Django or Rails of Lua. Supports Moonscript.
- lua-resty-http - Lua HTTP client driver, built on the cosocket API.
- Lapis - Full-stack framework for Lua and OpenResty. Like the Django or Rails of Lua. Supports Moonscript.
- ledge - Lua module providing scriptable, RFC-compliant HTTP cache functionality.
-
Concurrency and Multithreading
- cqueues - Library for managing sockets, signals, and threads based on an event loop with coroutines.
- comparison
- comparison
-
Templating
- lustache - Mustache template implementation.
-
File system and OS
- lunix - Bindings to common Unix system APIs, striving for thread-safety.
- LuaFileSystem - Extends and complements Lua's built-in set of file system functions.
-
Digital Signal Processing
- Worp - Sound/music/DSP engine written for LuaJIT.
-
Hardware and Embedded Systems
-
Math and Scientific Computing
- SciLua - Numerical/scientific computing framework built on LuaJIT, with an interface to R.
- Torch7 - Scientific computing framework with wide support for machine learning algorithms, used by Facebook, Google, and more.
- lhf's Lua Tools - Assorted libraries and tools, many math- or data-related.
- SciLua - Numerical/scientific computing framework built on LuaJIT, with an interface to R.
-
Parsing and Serialization
- LuaExpat - SAX XML parser via binding to the Expat library.
- lua-MessagePack - Pure Lua implementation of MessagePack.
- LPeg - A pattern-matching library for Lua, based on Parsing Expression Grammars.
- LuaExpat - SAX XML parser via binding to the Expat library.
- LPeg - A pattern-matching library for Lua, based on Parsing Expression Grammars.
- dkjson - JSON encoder/decoder implemented in pure Lua.
-
Implementations, Interpreters, and Bindings
- Lua - Lua's original ANSI C interpreter.
- LuaJIT - High-performance Just-In-Time compiler for Lua.
- Fengari - The Lua VM rewritten in Javascript with seamless JS and DOM interoperability.
- Lua - Lua's original ANSI C interpreter.
- MoonSharp - A Lua interpreter written entirely in C# for the .NET, Mono and Unity platforms.
-
Package Managers
- LuaRocks - De-facto tool for installing Lua modules as packages called "rocks", plus public rock repository and website. Much like npm or pip.
-
Debugging and Profiling
- ProFi - Simple profiler that works with LuaJIT and produces a report file.
-
IDEs and Plugins
- Lua Development Tools - Eclipse plugin which provides code completion, debugging, and more. Built on Metalua.
- Lua for IDEA - IntelliJ IDEA plugin which, among other things, provides code completion, smart highlighting, and experimental debugging.
- ZeroBraneStudio - Lightweight, customizable, cross-platform Lua-dedicated IDE with code completion and analysis, written in Lua. Has broad debugging support for numerous Lua engines.
- BabeLua - Lua editor/debugger extension for VS2012-13 with highlighting, auto-completion, linting, and formatting capabilities.
- Lua Development Tools - Eclipse plugin which provides code completion, debugging, and more. Built on Metalua.
-
Utility Belts
-
Game Engines
- LÖVE 2D - Desktop game development platform. Cross-platform, feature-complete, well-adopted.
- Corona SDK - Development platform for iOS and Android. Proprietary, but used by numerous top games and apps, totaling over 150 million downloads.
- MOAI - Open source, cross-platform, mobile game development framework. Minimalist C++ engine powered by Lua scripting.
- Drystal - Open source, games can run on Linux or on any platform with a recent web browser.
- Amulet - Open source, audio/visual toolkit suitable for small games and experimentation. It runs on Windows, Mac, Linux, HTML5 and iOS.
- LÖVR - 3D framework for creating virtual reality experiences, inspired by LÖVE 2D.
- LÖVR - 3D framework for creating virtual reality experiences, inspired by LÖVE 2D.
-
Game Development
- moaifiddle - Edit and share short scripts for the MOAI game engine and run them in the browser using WebGL.
- moaifiddle - Edit and share short scripts for the MOAI game engine and run them in the browser using WebGL.
-
Testing
-
Foreign Function Interfaces
- LuaJIT FFI - LuaJIT's mechanism for calling external C functions and using C data structures from pure Lua code.
-
Scriptable by Lua
- Hammerspoon - A powerful, extensible OS X automation tool. A community-maintained fork of [Mjolnir](http://www.mjolnir.io/).
- lumail - A console-based mail client, with extensive scripting capabilities.
- AwesomeWM - A highly configurable and extensible window manager for X, scripted and configured by Lua.
- Hammerspoon - A powerful, extensible OS X automation tool. A community-maintained fork of [Mjolnir](http://www.mjolnir.io/).
- Textadept - Extremely lightweight, customizable, cross-platform editor, written (mostly) in (and scripted by) Lua.
-
Miscellaneous
- MoonScript - Moonscript is a dynamic scripting language that compiles to Lua. It reduces verbosity and provides a rich set of features like comprehensions and classes. Its author calls it 'CoffeeScript for Lua'.
- sitegen - A static site generator which uses MoonScript and supports HTML and Markdown, page grouping, and plugins.
- sitegen - A static site generator which uses MoonScript and supports HTML and Markdown, page grouping, and plugins.
-
Community
- lua-l - The official Lua mailing list, and one of the focal points of the Lua community.
- Lua.Space - The Lua community blog.
- Lua Users Foundation - An association of individuals with the mission of supporting and promoting Lua and its community and ecosystems.
- lua-users.org - A site for and by users of Lua, featuring an IRC channel, a web archive of lua-l, and a large wiki.
- Lua Workshop - Annual 2-day meeting of the Lua community, in rotating locations.
- Lua Conf - Annual 1-day Lua conference in Brazil.
- FOSDEM - Annual 2-day gathering of F/OSS developers in Brussels which sometimes has a "Lua devroom".
- lua-l - The official Lua mailing list, and one of the focal points of the Lua community.
- Lua Conf - Annual 1-day Lua conference in Brazil.
- FOSDEM - Annual 2-day gathering of F/OSS developers in Brussels which sometimes has a "Lua devroom".
- Lua Conf - Annual 1-day Lua conference in Brazil.
-
References
- Reference Manual - The official definition of the Lua language.
- lua-users wiki - A large community-maintained collection of Lua information and resources, supplementing the official website.
- Lua Unofficial FAQ - Answers all sorts of Lua-related questions, including many of the form 'How to ___?'.
- Reference Manual - The official definition of the Lua language.
- Lua Unofficial FAQ - Answers all sorts of Lua-related questions, including many of the form 'How to ___?'.
-
Glossaries
- Lua 5.3 Glossary - A glossary of some essential Lua terms.
-
Style Guides
- Lua-users style guide - A general, high-level style guide; unopinionated, easily agreed on.
-
Tutorials
- Lua Crash Course - Short crash course readover, or reference for when you forget the basics.
- Learn Lua in 15 Minutes - A well-commented example file which covers the basics.
- Learning Lua from JS - An overview of the similarities and differences between Lua and JS; a great start for JavaScript folks looking to pick up Lua.
- lua-users tutorial - In-depth collection of tutorials aimed at newcomers.
- Creating an Image Server - Walks through setting up and using OpenResty to build a simple image processing server; a great starting point for playing with OpenResty.
- Lua Crash Course - Short crash course readover, or reference for when you forget the basics.
- Learn Lua in 15 Minutes - A well-commented example file which covers the basics.
- Creating an Image Server - Walks through setting up and using OpenResty to build a simple image processing server; a great starting point for playing with OpenResty.
-
Articles
- Embedding Lua in C - An introductory walkthrough of embedding Lua in a C program. A bit dated, but still a great walkthrough.
- Lua: Good, bad, and ugly parts - A thorough summary of the good, different, bad, and ugly aspects of Lua, including many subtle quirks, by the author of ZeroBraneStudio.
- Lua states, libraries, coroutines and memory - Diagrams and explains some more advanced concepts of the Lua VM, particularly when interfacing with C.
- Embedding Lua in C - An introductory walkthrough of embedding Lua in a C program. A bit dated, but still a great walkthrough.
-
Talks & Slides
- Roberto's Talks - History of talks given by Lua's chief architect, with slides for each.
- Lua Workshop Talks - High-quality talks are given at each ~annual Lua Workshop, and a history of them is online, slides included.
- Roberto's Talks - History of talks given by Lua's chief architect, with slides for each.
- Lua Workshop Talks - High-quality talks are given at each ~annual Lua Workshop, and a history of them is online, slides included.
-
Books
- Programming in Lua - The authoritative intro to all aspects of Lua programming, written by Lua's chief architect. Three editions released; first edition available online.
- Programming Gems - A collection of articles covering existing wisdom and practices on programming well in Lua, in a broad variety of use cases.
- Lua Programming - A shorter overview of the language, up to date for Lua 5.2, and available online.
- Programming in Lua - The authoritative intro to all aspects of Lua programming, written by Lua's chief architect. Three editions released; first edition available online.
- Lua Quick Reference - A quick reference on how to program in and embed Lua 5.1 through 5.3, by the creator of Textadept.
- Programming Gems - A collection of articles covering existing wisdom and practices on programming well in Lua, in a broad variety of use cases.
-
Other Lists
- Where Lua is Used - A comprehensive list of stand-alone programs written in or extensible using Lua.
- awesome-love2d - A list like this one, but focused on game dev and the LÖVE platform.
-
Command-line Utilities
- cliargs - A simple command-line argument parsing module.
-
Humanize
- say - Simple string key-value store for i18n.
-
Network
- LuaSocket - Networking extension which provides a socket API for TCP and UDP, and implements HTTP, FTP, and SMTP.
-
Data Stores
- LuaSQL - Simple interface for connecting to ODBC, ADO, Oracle, MySQL, SQLite and PostgreSQL.
-
Analysis Tools and ASTs
- luacov - Simple coverage analyzer, used by busted and telescope for checking test coverage.
-
Categories
Sub Categories
Community
11
Tutorials
8
Game Engines
7
Parsing and Serialization
6
Books
6
References
5
IDEs and Plugins
5
OpenResty
5
Scriptable by Lua
5
Implementations, Interpreters, and Bindings
5
Articles
4
Math and Scientific Computing
4
Talks & Slides
4
Other Lists
3
Concurrency and Multithreading
3
Web/Networking Platforms
3
Miscellaneous
3
Hardware and Embedded Systems
2
Game Development
2
File system and OS
2
Testing
2
Utility Belts
2
Network
1
Debugging and Profiling
1
Style Guides
1
Glossaries
1
Foreign Function Interfaces
1
Analysis Tools and ASTs
1
Package Managers
1
Humanize
1
Command-line Utilities
1
Data Stores
1
Templating
1
Digital Signal Processing
1
Logging
1