Skip to content

xNasuni/luau-interop

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,723 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Luau Interop

Luau (lowercase u, /ˈlu.aʊ/) is a fast, small, safe, gradually typed embeddable scripting language derived from Lua.

This fork is designed to overhaul the interop you get while embedding Luau in a website, Node.JS, or Typescript. For examples and documentation for Web/Node, you can check out the wiki.

This fork only modifies Web.cpp, lbaselib.cpp, and lbuiltins.cpp.

Usage

Luau is an embeddable programming language, this fork rewrites the WASM execution API and actually implements interop allowing you to provide a custom environment for the script that is executed, as well as interop allowing JS to call functions from Lua, and Lua to call functions from JS.

Building Luau Interop

./build_linux.sh
./build_macos.sh
./build_web.sh
./build_windows.sh

Building Luau Interop targeting Web/Node requires emcmake which is different from cmake.

Installing Emcmake

Linux / MacOS

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install latest
./emsdk activate latest
source ./emsdk_env.sh

Winows

git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
emsdk install latest
emsdk activate latest
emsdk_env.bat

About

A fork of luau that adds dynamic JavaScript interop. For web browsers, Node.js and Typescript.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Contributors

Languages

  • C++ 89.5%
  • Lua 3.8%
  • Luau 3.5%
  • Python 1.6%
  • C 1.1%
  • CMake 0.4%
  • Other 0.1%