You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
You love Lua but the runtime API is very weak and you don't want to handle and learn a lot of different luarock libraries? You came at the right place! This project aims to offer the bests of Lua and NodeJS together.
Don't use this in production!
Usage
You don't need lua installed to run demoon, but you need node and npm as well, firstly, install demoon globally:
$: npm i -g demoon
Then run it passing your entry lua file:
$: demoon app.lua
Example
This is a little sample code to demonstrate how demoon is powerful and bridges well with nodeJS:
-- you can require node modules (package.json/node_modules works as well)localhttp=require('http')
-- you can require js modules and lua files-- require('./myjsmodule.js')-- require('./myluamodule.lua')localport=os.getenv('PORT') or8080functionsleep(ms)
-- you can use and create promisesreturnPromise.create(function(resolve)
setTimeout(resolve, ms)
end)
end-- top level await works!sleep(1000):await()
http.createServer(async(function (req, res)
-- you can await inside async bounded functionssleep(1000):await()
res:write('Hello World!')
res['end']()
end)):listen(port)
print('Your server is running on port ' ..port..'!')