A Lua MVC web framework compatible with multiple Lua versions, web servers, and databases.
Sailor is a Model-View-Controller (MVC) web framework for Lua that enables developers to build structured web applications. It provides tools for routing, database interaction, form handling, and templating, supporting multiple web servers and databases. The framework aims to simplify web development in Lua by offering a convention-over-configuration approach.
Lua developers looking to build web applications with an MVC architecture, especially those needing compatibility with various web servers like Apache, Nginx, or lightweight CGI servers.
Sailor stands out for its broad compatibility with Lua versions (5.1, 5.2, LuaJIT) and web servers, combined with built-in features like ORM, CRUD generation, and client-side Lua support. It offers a full-stack solution tailored for the Lua ecosystem.
A Lua MVC Web Framework.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Runs on multiple web servers including Apache with mod_lua, Nginx with openresty, and lightweight options like Lwan and Xavante, as detailed in the supported environments section.
Supports MySQL, PostgreSQL, SQLite, and others via luasql, with ORM and CRUD generation for streamlined database interactions in MVC apps.
Enforces clean separation with models, views, and controllers, and includes built-in features like form generation, validation, and theme layouts for organized development.
Enables Lua scripting in browsers through Lua-to-JavaScript virtual machines, a distinctive feature for developers aiming to reuse Lua code across server and client.
The README explicitly states it's seeking new maintainers, raising concerns about long-term support, bug fixes, and future development stability.
Compatibility with Lua 5.3 is 'untested', which could be a blocker for teams using newer Lua versions and seeking up-to-date language features.
The example code warns that 'some methods of model class do not avoid SQL injections yet', indicating potential security risks in database operations.
Installation requires separate documentation files for Linux, Windows, and Mac, involving manual configuration of web servers and dependencies, which can be time-consuming.