my-awesome-lua
My list of quality Lua packages and resources.
https://github.com/MegaBedder/my-awesome-lua
Last synced: 23 days ago
JSON representation
Filtered by Lua. Clear filters
Resources
Asynchronous I/O
-
Luver
- a
luvitwithoutlit. - LuaNode - Asynchronous I/O for Lua, using the Reactor pattern like Node.js, EventMachine or Twisted.
- Lua Corovel - Asynchronous, event-loop development environment for Lua
Batteries Included
- UFO - Un Finished Object - a portable distribution of LuaJIT with precompiled binaries, libraries and FFI bindings
Build Tools and Standalone Makers
- luastatic - Build a standalone executable from a Lua program.
- Lake - A build engine written in Lua, similar to Ruby's rake.
- Luapak - a command-line tool, multi-platform, adjustable, all-in-one (yet modular) solution for building a standalone, zero-dependencies, possibly statically linked (only on Linux) executable for (almost) any Lua program.
Compiles to JS, asm.js or WebAssembly for Browser
- Luwa - Lua WASM JIT, a Lua runtime on top of WASM
Cryptographic
- PLC - A small collection of crpytographic functions, and related utilities, implemented in pure Lua (version 5.3 or above)
Database drivers
- Tarantool - is an in-memory database and application server.
- Redis - A Lua client library for the Redis key value storage system.
- lredis - a Redis (in-memory data structure store) client library for Lua
Data structures
- array.lua - A small library with useful methods to handle Lua's table when it's working like an Array
Debugging
- MobDebug - Remote debugger for Lua.
- inspect.lua - Human-readable representation of Lua tables
- lovebird - a Browser-based debug console. Originally made for LÖVE, but works in any project with LuaSocket support.
- ProFi - Simple profiler that works with LuaJIT and produces a report file.
- luatrace - Toolset for tracing/analyzing/profiling script execution and generating detailed reports.
- StackTracePlus - Drop-in upgrade to Lua's stack traces which adds local context and improves readability.
- clidebugger - A simple command line interface debugger for Lua 5.1 written in pure Lua.
Game Framework
- NoobHub - Network multiplayer and messaging for CoronaSDK, Moai, Gideros, LÖVE & Defold
Guides / Tutorials
- Lua Missions - A series of 'Missions' to work through which are designed to teach aspects of Lua along the way.
Libraries
- LuaCS - code.com/blog/2018/5/23.html) - a CSS Selectors parser library for Lua
- XMLua - code.com/blog/2017/12/25.html) - An user-friendly XML/HTML processing library for Lua based on libxml2
- luaexpat - a SAX XML parser based on the Expat (a stream-oriented XML parser) library.
- neturl - A Robust URL Parser (with the ability to parse querystrings) and Builder for Lua.
- lpeg_patterns - A collection of LPEG patterns
- luatz - Time, Date and Timezone library for lua
Lua 5.1
- Shine - a general purpose, dynamic, multi-paradigm programming language which is based on a modified version of the LuaJIT VM with features geared more to programming in the large.
- Metalua - a compiler for a superset of the Lua 5.1 language, which supports compile-time metaprogramming.
- Typed Lua - An Optional Type System for Lua
Lua 5.3
- Pallene - rio.br/~roberto/docs/pallene-sblp.pdf) [Slides] - a statically typed, ahead-of-time (AOT) compiled sister language to Lua, with a focus on performance. Pallene is also designed to seamlessly interoperate with Lua.
Lua VM in Lua
- LuaJIT Language Toolkit - an implementation of the Lua programming language written in Lua itself, as a starting point to implement a programming language that targets the LuaJIT virtual machine.
Message broker / queues
- lzmq - Lua binding to ZeroMQ version 3.2 or 4.x library. This library has C and FFI version of binding.
Miscellaneous
- Microlight - A little library of useful Lua functions, intended as the 'light' version of Penlight
- lua-ext - Standard library / extensions for Lua. math, operator functions, execution platform, Set implementation for Lua, I/O on strings; instead of files.
- Kong - a cloud-native, fast, scalable, and distributed Microservice Abstraction Layer (also known as an API Gateway, API Middleware or in some cases Service Mesh).
- Snabb Switch - a simple and fast packet networking toolkit.
- MoonGen - a fully scriptable high-speed packet generator built on DPDK and LuaJIT.
Multitasking
-
lua-llthreads2
- drop-in replacement for
lua-llthreadslibrary with several additional functionality. - Coil - A tiny cooperative threading module for Lua.
Native OS APIs
- win32_api_luajit - Cosmin's win32 api for luajit (with adjustments)
- ljsyscall - Unix system calls for LuaJIT
Network
-
lua-httpclient
- a unified wrapper around a
openresty/ngx.location.captureorluasocketandluasecas drivers. - lua-websockets - This project provides Lua modules for Websocket Version 13 conformant clients and servers.
- Turbo - a asynchronous networking suite and framework built for LuaJIT 2 to building fast and scalable network applications. It uses a event-driven, non-blocking, threadless design.
Programming Paradigms
- 30log - a small class system for OOP in Lua
- middleclass - A simple OOP library for Lua. It has inheritance, metamethods (operators), class variables and weak mixin support.
- PLoop - a C# like style object-oriented program system for lua.
- Luvent - Simple Event Library for Lua
- toynet - A simple event-driven I/O for Lua, coroutine based.
- lua-reactor-light - Lightweight lua reactor. Depends only on luasocket and exposes NodeJS-style API
- Lua Fun - a high-performance functional programming library for Lua
- Moses - Utility library for functional programming in Lua
- lamda - A functional programming library for Lua, inspired by Ramda.
- Safer - Paranoid Lua programming
Testing
- LuaUnit - a popular unit-testing framework for Lua, with an interface typical of xUnit libraries.
- Luacheck - A tool for linting and static analysis of Lua code.
- LuaInspect - a tool that does Lua code analysis, with plugins for HTML and SciTE.
- lualint - lua linter and static analysis of global variable
Utilities
- Allen - An utility library to manipulate strings, which provides a set of helpers for strings operations for Lua.
- Strictness - a small module to track access and assignment to undefined variables in Lua
- Serpent - Lua serializer and pretty printer.
Web Frameworks
Web Plataforms
- VeryNginx - a very powerful and friendly nginx which provide WAF, Control Panel, and Dashboards.
- OpenStar - Lua WAF, Nginx+Lua, OpenResty, LuaJIT, WAF+, CDN
- nginx-lua-prometheus - Prometheus metric library for Nginx written in Lua