• Stars
    star
    3,758
  • Rank 11,161 (Top 0.3 %)
  • Language
    Lua
  • License
    Apache License 2.0
  • Created over 12 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Lua + libUV + jIT = pure awesomesauce

Luvit 2.0 - Node.JS for the Lua Inventor

Linux Build Status Windows Build status Coverage Status

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. https://luvit.io/

Need Help?

Ask questions here through issues, on Discord 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 Makefile and make.bat.

git clone https://github.com/luvit/luvit.git
cd luvit
make

If you want to test luvit without constantly building, use luvi.

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-<name-of-test>.lua (e.g. luvi . -- tests/test-http.lua)
  • There is a wiki page on making new luvit releases at https://github.com/luvit/luvit/wiki/Making-a-luvit-release.

The packages in deps live primarily in this repo, but some are duplicated in luvit/lit to ease lit 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.

More Repositories

1

luv

Bare libuv bindings for lua
C
756
star
2

luvi

A project in-between luv and luvit.
C
293
star
3

lit

Toolkit for developing, sharing, and running luvit/lua programs and libraries.
Lua
238
star
4

luvit.io

Source to luvit.io
JavaScript
86
star
5

openssl

gyp version of openssl to embed in projects.
Assembly
31
star
6

awesome-luvit

A curated list of awesome Luvit frameworks, libraries and software
20
star
7

zlib

A git mirror of zlib releases
C
17
star
8

luajit-2.0

MIRROR: http://luajit.org/git/luajit-2.0.git
C
15
star
9

pcre2

Github mirror of official PCRE2 tarball
C
14
star
10

uv-ffi

Pure luajit-ffi bindings to libuv just for fun!
Lua
12
star
11

luvit-releases

Prebuilt binaries for various platforms.
Perl
9
star
12

pcre

Github mirror of official PCRE tarball
C
8
star
13

old.luvit.io

This repo is the server behind the luvit.io website.
HTML
8
star
14

lpeg

Mirror of http://www.inf.puc-rio.br/~roberto/lpeg/#download
C
8
star
15

zip-reader

A pure-lua luvit module for reading zip files.
Lua
6
star
16

gyp

mirror of http://git.chromium.org/external/gyp.git
Python
5
star
17

kernel

A simple async template language similair to dustjs and mustache (ported from c9/kernel)
Lua
5
star
18

continuable

A continuable based interface to luvit's internal APIs.
Lua
4
star
19

luvi-docker-builder

Docker scripts to build RPMs and DEBs
Makefile
3
star
20

bitop

git mirror of luajit's bitop library for normal lua
Lua
3
star
21

web-static

A static file serving middleware for the luvit web system.
Lua
3
star
22

try.luvit.io

The node server that powers the luvit repl in the browser.
JavaScript
3
star
23

ltin

LTIN encoder and decoder for luvit
Lua
3
star
24

web-router

A router middleware for the luvit web library.
Lua
1
star
25

logo

Vector and rendered version of logo for Luvit
1
star
26

luvi-binaries

1
star
27

lit-backup

Backup of the lit.luvit.io packages
1
star
28

web

An alternative http library for luvit based around continuables.
Lua
1
star
29

web-log

A logging middleware for web.
Lua
1
star
30

web-autoheaders

A middleware that helps support bits of the HTTP spec properly in web apps.
Lua
1
star