Skip to content

Vara

Vara is a lightweight runtime that provides native system access, media processing and resource management.
Build applications without the overhead of web runtimes.

Turn luau into a language for desktop development.

embr tool add chocolate-bar2410/vara
rokit add chocolate-bar2410/vara
const system = require("@vara/system")
print(system.Device)
print("-----------------------------------")
print(`OS: {system.Os} {system.Distro} {system.Arch}`)
print(`DE: {system.DesktopEnvironment}`)
print(`Language: {system.LanguagePreferences.Message[1]}`)
> vara run fast_fetch.luau

const fs = require("@vara/fs")
const media = require("@vara/media")

const kernel = {
    1, 2, 1,
    2, 4, 2,
    1, 2, 1
}

local image = media.Image("example.png")
    :Resize(512,512,"LANCZOS3")
    :Convolve(3,3,kernel)
    :Flip(0)
    :Flop(1)

fs.File("example.qoi"):Write(image:Encode("QOI"))
> vara run image_pipeline.luau




Native media processing
Load, Transform and export media directly from luau.
Build tooling and automated pipelines for image and audio processing.
Operating system access
Access information on the operating system, device details, and user preferences directly from Luau.
Native resource objects
Files, directories, and other resources are encapsulated as luau objects with their own properties and methods.