Skip to content
On this page

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

ModuleDescriptionScope
BaseFundamental types, macros, concepts, and metaprogramming utilitiesCommon
ExpectedError handling with Expected<T> and Error typesCommon
ConfigConfiguration loading and saving with JSON serializationCommon
ReflectionCompile-time reflection, serialization, and deserializationCommon
Reflection (Advanced)Dispatch model, specialization signatures, and worked examplesCommon

Core Systems

ModuleDescriptionScope
ModMod lifecycle management, manifest, and mod managerCommon
EventEvent bus, listeners, and built-in events (player, world, entity, server, client)Common / Server / Client
CommandCommand registration, overloads, enums, and executionCommon
ServiceService registration, discovery, and Bedrock engine accessorsCommon / Server / Client
FormInteractive UI forms (Simple, Modal, Custom)Common
Data-driven UIReactive DDUI forms, typed observables, screen sessions, and data-store bindingsCommon

I/O & Logging

ModuleDescriptionScope
IO & LoggerLogger, sinks, formatters, and file utilitiesCommon
I18nInternationalization and localization supportCommon

Async & Threading

ModuleDescriptionScope
CoroutineCoroutine tasks, generators, executors, and async/awaitCommon
ThreadThread pool, server thread executor, and synchronizationCommon
ChronoGame tick clock, server clock, and time utilitiesCommon

Data & Utilities

ModuleDescriptionScope
DataObservable values, key-value database, dependency graph, version, and containersCommon
UtilsSystem, string, hash, random, file, base64, and error utilitiesCommon

Low-Level

ModuleDescriptionScope
Memory & HookMemory manipulation, function hooking, and signaturesCommon
NetworkCustom packet registration and handlingCommon

Client-Only

ModuleDescriptionScope
Input (Client)Keyboard/mouse input binding and input eventsClient 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)