Livelink Core Library
Overview
The Livelink protocol enables communication between a client and a 3dverse server using a message-based, binary format. This protocol evolves alongside server updates, necessitating a dynamically loaded implementation rather than embedding it directly in client applications.
This package, the Livelink Core library, provides:
- Minimal code to dynamically load the full library from a CDN.
- TypeScript type definitions for protocol integration.
How It Works
The Livelink Core library package primarily offers TypeScript type definitions. The only functional code it includes is the DynamicLoader
module, which dynamically retrieves the remaining library code from the CDN.
Key Features:
- Always loads an up-to-date version of the Livelink protocol.
- Ensures forward compatibility for all client applications.
By dynamically loading the library, this system guarantees smooth communication with the server, regardless of server-side updates.
Usage
⚠ Warning: This library is not meant for direct use.
Refer to the @3dverse/livelink package for a practical implementation.
Installation
To install the package, run:
npm install @3dverse/livelink.core
Loading the Library
Import the DynamicLoader module:
import { DynamicLoader } from "@3dverse/livelink.core";
Before using any other features, call the load static method:
await DynamicLoader.load();
Using the Core
Once the library is loaded, create a new instance of the core using the Core()
static method:
const core = new DynamicLoader.Core();
This instance contains the full implementation of the Livelink protocol.
Protocol
A formal specification of the Livelink protocol is not yet published. The protocol primarily revolves around:
- Commands: Instructions sent to the server.
- Queries: Requests for information addressed to the server.
- Events: Notifications received from the server.
Stay tuned for updates as the protocol evolves.