Lua is a tiny language that can do a lot. As a scripting language, it can be embedded into larger projects, used in IoT devices for its lightweight nature and implemented as a user-friendly way to get help from a wide variety of coders thanks to its simple interface and flexible design. It can support both functional and object-oriented approaches, but the amount of support it can supply is limited. Lua has no built-in support for advanced file manipulation, directory traversal, process creation or piping. The goal of Apolo, and my Google Summer of Code project is to build a library that adds these core functions to lua.

The major goals of this project are:

  • To broaden Apolo's current library of commands
  • To add piping and IO redirecting to Apolo
  • To include flexible management of background processes
  • To build a wide variety of tests to ensure that all of lua's functions work as intended



Connor McPherson


  • Rom├írio Rios