The LuaJIT Wiki

not logged in | [Login]

As Lua is a very succinct language, with a minimum of pre-installed libraries, much of the power available to a Lua programmer comes from performing interop calls to external libraries. LuaJIT in particular, provides excellent support for calling external libraries. If what you want is access to a pre-compiled library that is on your target system, then you want to use a FFI Bindings library.

If what you want instead is code that is written 100% in Lua, with no additional library dependencies, then you might want to grab one of the packages listed here.

The criteria are:

  • 100% LuaJIT code
  • No dependencies on external libraries

Whether your use case is greatly improved through usage of a native package depends on what your criteria are. One of the key benefits might simply be that you do not have to carry and maintain a separate library, written in a different language than Lua.

Encoding & Decoding


  • lrc4: RC4 stream cipher

Standard Functions

  • LAPHLibs: various functions, including utf-8, crc, md5, streams, xml
  • LPegLJ: string pattern matching based upon PEG (parsing expressions) and simplified RegEx (regular expressions) al la LPeg.
  • luapower/utf8: utf-8 basics
  • Lua Fun: functional programming library optimized for tracing JIT

System libraries

Numerical libraries

  • Rclient: Interfaces LuaJIT with the R language via Rserve

Date Time libraries

  • Time: dates and periods according to the Gregorian calendar

Data structures



  • UFO - includes OpenGL and glu, OpenCL, SDL, ZeroMQ, GLFW