Need help with luvit?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

3.3K Stars 346 Forks Apache License 2.0 2.9K Commits 72 Opened issues


Lua + libUV + jIT = pure awesomesauce

Services available


Need anything else?

Contributors list

Luvit 2.0 - Node.JS for the Lua Inventor

Linux Build Status Windows Build status Coverage Status #luvit on Freenode

Welcome to the source code for Luvit 2.0. This repo contains the luvit/luvit metapackage and all luvit/* packages as published to lit.

This collection of packages and modules implements a node.js style API for the luvi/lit runtime. It can be used as both a library or a standalone executable.

See the main project webpage for more details.

Need Help?

Ask questions here through issues, on irc #[email protected] or the mailing list.

Binary Modules

Luvit supports FFI and Lua based binary modules. There is a wiki entry explaining how to manage and include a binary module within a bundled application. Publishing Compiled Code

Hacking on Luvit Core

First you need to clone and build luvit, this is easy and works cross-platform thanks to

git clone
cd luvit

If you want to test luvit without constantly building, use

luvi . 

Always make sure to run

make test
before submitting a PR.

Notes to Maintainers

  • Use
    luvi /path/to/luvit
    to test changes without rebuilding the binary.
  • To run the test suite, run
    make test
    to build a luvit and use that.
  • If you want to test a custom built luvi, run
    luvi . -- tests/run.lua
  • If you want to run a specific test file with a custom built luvi, run
    luvi . -- tests/test-.lua
    luvi . -- tests/test-http.lua
  • There is a wiki page on making new luvit releases at

The packages in deps live primarily in this repo, but some are duplicated in luvit/lit to ease

bootstrapping. Updates can be pushed from either repo to lit, just make sure to keep them in sync. One way to do this is to
rm -rf
deps && lit install
. This will install the latest version of all the packages from lit. Check the diff carefully to make sure you're not undoing any work. There might have been unpublished changes locally in luvit that aren't in the lit central database yet.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.