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 |
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 |
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 |
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)