Releases: sailorproject/sailor
Sailor v0.5 - Pluto
Sailor MVC Lua Framework v0.5 - Pluto
Sailor is an MVC Framework and you can use it to make web development in Lua.
What's new from Sailor v0.4 Chibi?
- More tests for Sailor itself and integration with Travis CI
- Transactions for some major databases (MySQL, PostgreSQL, SQLite3)
- Integration with multiple Lua->JS virtual machines for using Lua on the browser
- General improvements on using Lua on the browser
- Requiring of Lua modules
- Accessing JS functions and passing callbacks
- Better DOM manipulation
- Accessing JS libraries (e.g. JQuery) and using them from Lua
- Integration with internal OpenResty's MySQL DB API
- Simulated OpenResty environment on automated tests (Depends on OpenResty)
- Improvements on OpenResty compatibility
- Improvements on Lighttpd compatiblity
- Some bugfixes
- Queries when using PostgreSQL and SQLite3
- Route paths on Xavante and Apache webservers
- Adds missing db.close on model:find_all
- Breaking changes
sailor
is no longer on global namespace, if you are accessing sailor attributes now you need to require
- Deprecations
- sailor.make_url has been copied to page:make_url and will be removed on next versions
- sailor.model has been copied to a call metamethod on the model module and will be removed on next version
For more details, read the complete changelog.
What do we intend for coming next?
- A rework on friendly urls
- Have a way to easily integrate ready-to-go external sailor extensions / plugins
- Rework how Sailor deals with views, allowing to use templates other than Lua Pages
- Review the session manager
- Integration with mod_lua's DB API and DB module refactor
Call for contributors!
Would you like to participate in the future of Sailor or contribute to a Lua tool for web development? Sailor wants your help to make our next release a 1.0 release, we are now very close! :) Please consider contributing with code, tests, documentation, translation or spreading the word. For more details, read the complete Contribution Guide.
Quick install example for Unix, using Xavante web server:
luarocks install sailor
sailor create "my app" /var/www
cd /var/www/my_app
lua start-server.lua
ATTENTION: If you are upgrading from a previous version you might have an issue with shared files during app creation. If it's the case, then you need to remove the current sailor version before installing the new one.
Different environments and more info
Take a look at our docs for installations for Windows, Linux or Mac + First app tutorial + Reference Manual - http://sailorproject.org/?r=docs
Supported Environments
OS - Windows, Mac and Linux
Servers - Apache2 with mod_lua, Nginx distro OpenResty, Mongoose, Xavante, Lwan and Lighthttpd
Databases - MySQL, PostgreSQL, SQLite and all databases supported by the luasql library + OpenResty native MySQL API
More information about stuff we use:
LP Templates - http://keplerproject.github.io/cgilua/manual.html#templates
Lua at client - https://github.com/felipedaragon/lua_at_client
Valua - https://github.com/Etiene/valua
Moonshine - http://moonshinejs.org/
Lua5.1.js - https://github.com/logiceditor-com/lua5.1.js
Lua.vm.js - https://kripken.github.io/lua.vm.js/lua.vm.js.html
Starlight - https://github.com/paulcuth/starlight
Do I have to pay for this?
No. Sailor is free software, we use the MIT License. Your help is appreciated though on testing the software and providing comments and feedback or contributing to the project's code. If you like Sailor, you can also consider making a donation: http://sailorproject.org/?r=main/donate
Copyright (c) 2014-2015, Etiene Dalcol
Sailor contains free software licensed third-party code from Lua at Client, Remy, CGILua, Starlight, Moonshine, Lua5.1.js, Lua.vm.js. For detailed credits and licenses, check the source files.
http://sailorproject.org
[email protected]
http://twitter.com/sailor_lua
Sailor v0.4 - Chibi
Sailor MVC Lua Framework v0.4 - Chibi
Sailor is an MVC Framework and you can use it to make web development in Lua.
What's new from Sailor v0.3 Jupiter?
- Integration with Busted and a test module to provide unit and functional tests for your app.
- Some bug fixes and general improvements
What's coming on next?
- Improvements of Lua on the client side
- Integration with mod_lua's DB API and DB module refactor
- Improvements in the ORM
Quick install example for Unix, using Xavante web server:
luarocks install sailor
sailor create "my app" /var/www
cd /var/www/my_app
lua start-server.lua
ATTENTION: If you are upgrading from a previous version you might have an issue with shared files during app creation. If it's the case, then you need to remove the current sailor version before installing the new one.
Different environments and more info
Take a look at our docs for installations for Windows, Linux or Mac + First app tutorial + Reference Manual - http://sailorproject.org/?r=docs
Supported Environments
OS - Windows, Mac and Linux
Servers - Apache2 with mod_lua, Nginx distro OpenResty, Mongoose, Xavante, Lwan and Lighthttpd
Databases - MySQL, PostgreSQL, SQLite and all databases supported by the luasql library
More information about stuff we use:
LP Templates - http://keplerproject.github.io/cgilua/manual.html#templates
Lua at client - https://github.com/felipedaragon/lua_at_client
Valua - https://github.com/Etiene/valua
Do I have to pay for this?
No. Sailor is free software, we use the MIT License. Your help is appreciated though on testing the software and providing comments and feedback. If you like Sailor, you can also consider making a donation: http://sailorproject.org/?r=main/donate
Copyright (c) 2014-2015, Etiene Dalcol
Sailor contains the following MIT-licensed, third-party code from Lua at Client, Remy and CGILua. For detailed credits and licenses, check the source files.
http://sailorproject.org
[email protected]
http://etiene.net
http://twitter.com/etiene_d
Sailor v0.3 - Jupiter
Sailor MVC Lua Framework v0.3 - Jupiter
Sailor is an MVC Framework and you can use it to make web development in Lua.
What's new from Sailor v0.2 Mars?
- Friendly urls
- Inspect function for better debugging => similar to a var dump
- Custom 404 pages
- Runs over Lighttpd, Xavante and Lwan web servers
- Relations
- Model generation (reading from DB)
- CRUD generation (reading from model)
- Theme and layout (now you can have multiple layouts inside a theme. e.g. 1-column and 2-column)
- Bug fixes and general improvements
What's coming on next?
- Integration with a test suite
- Improvements of Lua on the client side
- Integration with mod_lua's DB API and DB module refactor
- Improvements in the ORM
Quick install example for Unix, using Xavante web server:
luarocks install sailor
sailor_create "my app" /var/www
cd /var/www/my_app
lua start-server.lua
ATTENTION: If you are upgrading from version 0.2.1 to 0.3 you might have an issue with shared files during app creation. If it's the case, then you need to remove the current sailor version before installing the new one.
Different environments and more info
Take a look at our docs for installations for Windows, Linux or Mac + First app tutorial + Reference Manual - http://sailorproject.org/?r=docs
Supported Environments
OS - Windows, Mac and Linux
Servers - Apache2 with mod_lua, Nginx distro OpenResty, Mongoose, Xavante, Lwan and Lighthttpd
Databases - MySQL, PostgreSQL, SQLite and all databases supported by the luasql library
More information about stuff we use:
LP Templates - http://keplerproject.github.io/cgilua/manual.html#templates
Lua at client - https://github.com/felipedaragon/lua_at_client
Valua - https://github.com/Etiene/valua
Do I have to pay for this?
No. Sailor is free software, we use the MIT License. Your help is appreciated though on testing the software and providing comments and feedback. We also accept donations: http://sailorproject.org/?r=main/donate
Copyright (c) 2014-2015, Etiene Dalcol
Sailor contains the following MIT-licensed, third-party code from Lua at Client, Remy and CGILua. For detailed credits and licenses, check the source files.
http://sailorproject.org
[email protected]
http://etiene.net
http://twitter.com/etiene_d
Sailor v0.2 - Mars
Sailor MVC Lua Framework v0.2 - Mars
Sailor is a MVC Framework and you can use it to make web development writing code in Lua.
Hi! I'm Etiene, I wanted to learn Lua and decided to go kamikaze and build a MVC framework. We are still in pre-pre alpha, but flourishing nicely. Thankfully, I have been having help from collatorators like @felipedaragon and from mentors like @hishamhm.
What's new from Sailor v0.1 Venus?
- Validation
- Lua at client - run Lua code on client-side
- Basic form generation
- LuaRocks setup
- Layouts and Twitter Bootstrap integration
- Windows compatibility
- Include and redirect
- Sessions and cookies
- Basic login and authentication
- Models improvements and some injection checks
- Separation from app and libs
- Easier Linux deployment
- Compatibility with several webservers (e.g. nginx, mongoose)
- Many bugfixes and general improvements
What's coming on next?
- More safety measures
- Session manager review
- Integration with mod_lua's DB API and DB module refactor
- Compatibility with DBs other than MySQL
- Mac install
- More features to our ORM
- More features to our form generation
How do I use this thing?
This is the install manual for Linux: https://github.com/Etiene/sailor/blob/master/docs/INSTALL_LINUX.md
This is the install manual for Windows:
https://github.com/Etiene/sailor/blob/master/docs/INSTALL_WIN.md
Sailor also works on Mac, we tested installing Apache from brew but we didn't make a manual yet! For now you can try following the Linux manual and adapting. I hope it works! If it doesn't, contact me and I'll try to help =)
More information about stuff we use:
LP Templates - http://keplerproject.github.io/cgilua/manual.html#templates
Mod_lua - http://modlua.org/
Lua at client - https://github.com/felipedaragon/lua_at_client
Do I have to pay for this?
No. Sailor is free to use and open source, we use the MIT License. Your help is appreciated though on testing the software and providing comments and feedback.
Copyright (c) 2013-2014, Etiene Dalcol
Sailor contains the following MIT-licensed, third-party code from Valua, Lua at Client, Remy and CGILua. For detailed credits and licenses, check the source files.
http://sailorproject.org
[email protected]
http://etiene.net
http://twitter.com/MulherCerebro
Sailor v0.1 - Venus
Sailor MVC Lua Framework v0.1 - Venus
Sailor currently supports parsing of Lua Pages, routing, email sending and ORMs. Our models currently have the following pre-made methods:
- :new() - instantiates an object
- :save() - saves it to the database. If it is a new object it will insert, if not, it will update. (currently tested on MySQL, but should work on PostgreSQL too)
- :find(where_string) - finds one object based on a where clause
- :find_by_id(id) - finds one object using primary key
- :delete() - deletes an object from db
- :find_all() or :find_all(where_string) - finds all objects of that model and returns a table of objects, can restrict them based on where_string clause.
Warning: this is a tech preview and the model class does not avoid SQL injections yet.
Sailor currently requires the following dependencies:
- LuaSocket - get it with luarocks (If you want to send emails)
- LuaSec - get it with luarocks (If you want to send emails)
- LuaSQL - get it with luarocks (If you want to persist your models. You should also install a db server supportted by LuaSQL.)
- Apache2 - (mandatory)
- mod_lua - get it with a2enmod (mandatory)
More information about stuff we use:
http://keplerproject.github.io/cgilua/manual.html#templates
https://httpd.apache.org/docs/trunk/pt-br/mod/mod_lua.html
http://w3.impa.br/~diego/software/luasocket/smtp.html
http://keplerproject.org/luasql/
What's coming on next?
- Safety Measures
- Form - Model Validation
- Basic layout
- Redirects
- General Improvements and other new stuff! :D
How do I use this thing?
Install the dependencies and copy these contents to the directory that your apache is reading from! :) If you have any trouble doing that, tell me so I can improve the manual.
Do I have to pay for this?
No. Sailor is free to use and open source, we follow MIT License. Your help is appreciated though on testing the software and providing comments and feedback.