# Starline Lua API > Reference documentation for scripting Starline with Lua. - [Getting started](https://lua.starline.one/index.md): Set up Starline Lua scripts, reload them, and learn which libraries and runtime features are available. - [UI](https://lua.starline.one/ui.md): Create tabs, groups, controls, lists, text inputs, and dynamic menu layouts. - [Input](https://lua.starline.one/input.md): Read raw Win32 key state and resolve virtual-key names. - [Panorama](https://lua.starline.one/panorama.md): Run JavaScript and interact with panels in the CS2 Panorama UI. - [Events](https://lua.starline.one/events.md): Register callbacks for command processing, movement, rendering, votes, movement exploits, and CS2 game events. - [Cheat](https://lua.starline.one/cheat.md): Use general Starline utilities for screen state, pattern scanning, interfaces, schema offsets, clipboard access, and logging. - [Hooks](https://lua.starline.one/hooks.md): Create and manage native function hooks from LuaJIT FFI. - [Entity](https://lua.starline.one/entity.md): Access CS2 entities and schema fields through typed Lua objects. - [Engine](https://lua.starline.one/engine.md): Use combat, game-state, command, prediction, and network helpers. - [ConVar](https://lua.starline.one/convar.md): Read, override, restore, and inspect CS2 console variables. - [Trace](https://lua.starline.one/trace.md): Run ray and hull traces and test line segments for smoke. - [Renderer](https://lua.starline.one/renderer.md): Draw shapes, text, textures, and world-space markers from paint callbacks. - [ESP](https://lua.starline.one/esp.md): Add custom text, flags, and bars to the player ESP. - [Math](https://lua.starline.one/math.md): Use Starline interpolation, angle, vector, and numeric helpers. - [HTTP](https://lua.starline.one/http.md): Send asynchronous HTTP GET and POST requests from Lua scripts. - [JSON](https://lua.starline.one/json.md): Encode and decode JSON values in Starline Lua scripts. - [File](https://lua.starline.one/file.md): Read and write script data inside the Starline sandboxed data directory. - [System](https://lua.starline.one/system.md): Block programs with Windows Firewall and clean up session-created rules. - [Color](https://lua.starline.one/color.md): Create RGBA colors for rendering, ESP, and UI controls. - [Vector](https://lua.starline.one/vector.md): Create and manipulate Vector and QAngle values. - [Pointer](https://lua.starline.one/pointer.md): Read and write native memory through typed pointer accessors. - [CGlobalVars](https://lua.starline.one/classes/cglobalvars.md): Read live engine timing and frame state from the global variables object. - [CUserCmd](https://lua.starline.one/classes/cusercmd.md): Read and modify movement, buttons, view angles, and mouse deltas in command callbacks.