Kepler is a free software project written in Lua that provides a portable, extensible website development platform. Current stable release is Kepler 1.1.1, for Lua 5.1. Kepler works on Windows and most variants of Unix.

The platform was designed to work with a number of web serving environments, called “launchers” in Kepler terminology. Kepler includes launchers for Apache (mod lua), FastCGI, CGI, ISAPI as well as a native web server written in pure Lua, called Xavante.

Kepler also provides the following frameworks:

WSAPI – a web server API that abstracts the web server from Lua web applications a la Rack and WSGI
Orbit – a WSAPI-based model–view–controller (MVC) web framework
Kepler also provides the following modules:

CGILua – tool for creating dynamic Web pages and manipulating input data from Web forms, providing a CGI-like programming paradigm for different launchers such as Xavante and mod_lua
LuaSQL – an interface from Lua to a DBMS, enabling Lua programs to connect to ODBC, ADO, Oracle, MySQL, SQLite and PostgreSQL databases
Copas – a coroutine-based dispatcher, used by Xavante
Cosmo – a templating engine that is “safe” protecting applications from arbitrary code within templates
Coxpcall – coroutine compatible encapsulation of native pcall and xpcall
LuaFileSystem – a library of file manipulation routines complementing Lua’s basic set
Rings – a library for creating isolated Lua execution environments from within Lua
LuaExpat – an interface to the XML processing library Expat
LuaLogging – a simple logging API
LuaZip – library for reading inside ZIP files
MD5/DES56 – basic cryptographic library, providing a digest function and a crypt/decrypt pair

Leave a Reply