Libraries

Libraries are external packages that you can import and use in your projects. Some libraries extend the capabilities of LÖVR and others just make it easier to get stuff done. Libraries are usually distributed as a single Lua file. You can copy the Lua file into your project and require it to use the library:

-- library.lua is sitting next to our main.lua here
local lib = require('library')

function lovr.load()
  lib.doStuff()
end

Also see the Plugins page for a list of useful plugins.

List of Libraries

LÖVR-specific libraries:

inDECK A standalone 3D development environment focused on developing VR from within VR.
lite-lovr A lightweight text editor written in Lua and hosted on LÖVR platform.
lodr A live-reloading wrapper for LÖVR.
lovr-ent Entity tree library / sample project.
lovr-haxe-wrappergen Haxe bindings for LÖVR.
lovr-icosphere A library to create icosphere meshes.
lovr-keyboard Keyboard input.
lovr-letters A library for making VR keyboards.
lovr-mouse Mouse input.
lovr-procmesh Generation of mesh primitives and constructive solid geometry (CSG) operations.
lovr-ui An immediate mode VR GUI library for LÖVR
lovr-window Advanced settings for the desktop window.

General Lua libraries:

30log A library for object oriented programming in Lua.
classic Class library.
cpml A 3D math library for Lua.
flux A tweening library for Lua.
knife A collection of useful micromodules for Lua.
lume Lua utility functions geared towards game development.
penlight Miscellaneous helpers.
tiny-ecs An entity component system for Lua.
tween.lua A tweening library for Lua.