Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Lua
  3. Sailor

Sailor

MITLua

A Lua MVC web framework compatible with multiple Lua versions, web servers, and databases.

GitHubGitHub
938 stars126 forks0 contributors

What is Sailor?

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.

Target Audience

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.

Value Proposition

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.

Overview

A Lua MVC Web Framework.

Use Cases

Best For

  • Building web applications in Lua with an MVC architecture
  • Developing apps that need to run on multiple web servers (Apache, Nginx, etc.)
  • Creating database-driven sites with ORM support for MySQL, PostgreSQL, or SQLite
  • Implementing server-side templating with Lua Pages (.lp files)
  • Adding client-side Lua scripting via JavaScript virtual machines
  • Writing unit and functional tests for Lua web apps with Busted integration

Not Ideal For

  • Projects requiring a large ecosystem of third-party libraries or plugins, as Lua's web development community is smaller compared to languages like JavaScript or Python.
  • Teams that need robust, commercially supported frameworks with frequent updates and security patches, given Sailor's call for new maintainers.
  • Applications heavily dependent on modern front-end frameworks like React or Vue.js, as Sailor's client-side Lua support is niche and may not integrate seamlessly.
  • Developers looking for extensive, up-to-date documentation and tutorials, which might be limited due to the project's niche nature and maintenance status.

Pros & Cons

Pros

Broad Server Compatibility

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.

Flexible Database Integration

Supports MySQL, PostgreSQL, SQLite, and others via luasql, with ORM and CRUD generation for streamlined database interactions in MVC apps.

Structured MVC Framework

Enforces clean separation with models, views, and controllers, and includes built-in features like form generation, validation, and theme layouts for organized development.

Unique Client-Side Lua

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.

Cons

Uncertain Maintenance Status

The README explicitly states it's seeking new maintainers, raising concerns about long-term support, bug fixes, and future development stability.

Limited Lua 5.3 Support

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.

Security Vulnerabilities in ORM

The example code warns that 'some methods of model class do not avoid SQL injections yet', indicating potential security risks in database operations.

Complex Setup Process

Installation requires separate documentation files for Linux, Windows, and Mac, involving manual configuration of web servers and dependencies, which can be time-consuming.

Frequently Asked Questions

Quick Stats

Stars938
Forks126
Contributors0
Open Issues48
Last commit3 years ago
CreatedSince 2014

Tags

#orm#apache#luajit#server-side-rendering#mvc#nginx#postgresql#web-framework#sqlite#lua

Built With

L
LuaRocks
b
busted
L
LuaJIT
B
Bootstrap
L
Lua

Included in

Lua4.5k
Auto-fetched 1 day ago

Related Projects

awesome-restyawesome-resty

A List of Quality OpenResty Libraries, and Resources.

Stars2,483
Forks262
Last commit4 months ago
lua-resty-httplua-resty-http

Lua HTTP client cosocket driver for OpenResty / ngx_lua.

Stars2,079
Forks630
Last commit1 month ago
ledgeledge

An RFC compliant and ESI capable HTTP cache for Nginx / OpenResty, backed by Redis

Stars459
Forks57
Last commit5 years ago
OpenResty GitHub OrganizationOpenResty GitHub Organization

Home of the repositories for ngx_lua, ngx_openresty, and many related modules

Stars0
Forks0
Last commit
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub