Skip to content

API Reference

Welcome to the LeviLamina API Reference. This section provides detailed documentation for every module under ll/api, including class descriptions, method signatures, usage examples, and platform notes.

Module Overview

LeviLamina's API is organized into the following modules:

Foundation

Module Description Scope
Base Fundamental types, macros, concepts, and metaprogramming utilities Common
Expected Error handling with Expected<T> and Error types Common
Config Configuration loading and saving with JSON serialization Common
Reflection Compile-time reflection, serialization, and deserialization Common
Reflection (Advanced) Dispatch model, specialization signatures, and worked examples Common

Core Systems

Module Description Scope
Mod Mod lifecycle management, manifest, and mod manager Common
Event Event bus, listeners, and built-in events (player, world, entity, server, client) Common / Server / Client
Command Command registration, overloads, enums, and execution Common
Service Service registration, discovery, and Bedrock engine accessors Common / Server / Client
Form Interactive UI forms (Simple, Modal, Custom) Common
Data-driven UI Reactive DDUI forms, typed observables, screen sessions, and data-store bindings Common

I/O & Logging

Module Description Scope
IO & Logger Logger, sinks, formatters, and file utilities Common
I18n Internationalization and localization support Common

Async & Threading

Module Description Scope
Coroutine Coroutine tasks, generators, executors, and async/await Common
Thread Thread pool, server thread executor, and synchronization Common
Chrono Game tick clock, server clock, and time utilities Common

Data & Utilities

Module Description Scope
Data Observable values, key-value database, dependency graph, version, and containers Common
Utils System, string, hash, random, file, base64, and error utilities Common

Low-Level

Module Description Scope
Memory & Hook Memory manipulation, function hooking, and signatures Common
Network Custom packet registration and handling Common

Client-Only

Module Description Scope
Input Keyboard/mouse input binding and input events Client Only

Scope Legend

  • Common β€” Available in both server and client builds. Headers located in src/ll/api/.
  • Server β€” Server-specific extensions. Headers located in src-server/ll/api/.
  • Client β€” Client-specific extensions. Headers located in src-client/ll/api/.

Conventions

All code examples in this reference:

  • Include the necessary #include directives
  • Use fully qualified namespaces on first mention
  • Are compilable with C++20 and the LeviLamina build environment
  • Use LLAPI / LLNDAPI macros for exported functions (see Base for details)