One page per module. Each entry leads with the signature and a one-line summary, then behavior, parameters, returns, errors, and an example. This section is for looking things up, not for reading front to back; Scripting is the part that explains how the pieces fit.
Three kinds of module live here, and require resolves all of them the same way:
- The
jess global and its members: jess.context, jess.worker, jess.events, jess.interfaces, jess.application, jess.shader, jess.input, and the values that belong to no module. Each member is also require('@jess/<name>').
- The built-in modules, Luau that ships inside the binary:
@jess/log, @jess/test, @jess/jpk, @jess/package.
- The built-in package's exports:
@jess/style, @jess/analysis, @jess/json, @jess/yaml, @jess/data/toml, @jess/data/value, @jess/l10n, @jess/input, @jess/backup, @jess/http.
The native primitives under all of it, files, bytes, processes, the network, and text, are L3i's @dream/* modules, documented on L3i's own site.
Option tables, the last argument most functions take, reject keys they don't take: the error names the key and lists the ones the function does take, so a typo fails instead of quietly doing the default.
The examples are written against the types jess luau-types writes, under --!strict. If one disagrees with the jess you have, the jess you have wins, and the page is wrong.
jess
The global table: its members, jess.null, jess.granted, jess.payload, jess.version, and require.
jess.context
Bind handlers to the phases a ScriptDomain schedules for a context.
jess.worker
Spawn isolated Luau workers beside a ScriptDomain and talk to them in messages.
jess.events
Emit named application events for the handlers a domain bound to a name, delivered at its next event drain.
jess.interfaces
Look up a domain's interfaces: the plain tables an application's packages provide by id, composed through their overrides.
jess.application
Ask the host running an application target to stop, with an exit status.
jess.shader
Typed shader programs, built by ordinary Luau modules.
@jess/input
Author an action graph as data, compile and validate it, label and check it for a settings screen, route its edges to intents, and drive it headlessly on a clock you control.
jess.bench
What a measurement needs from the host: whether this build is the one releases ship, and a full collection between batches.
@jess/log
Structured logging for scripts and packages: loggers with context, child loggers, and capture for tests.
@jess/test
Test suites in Luau: describe, it, hooks, expectations with deep equality, error assertions, log capture, and a report.
@jess/jpk
The JPK container: a narrow ZIP subset, read lazily under budgets and written as one canonical byte sequence.
@jess/package
Packages from a Package Source or a JPK: manifests, content digests, packing, and code-free resolution of layers into an activation plan.
@jess/style
jess's Luau style checker: findings with rule ids, spans, and severities, over Luau's own parser, from the built-in package jess carries.
@jess/analysis
Semantic facts over Luau source: requires, calls, members, functions, and a folder of modules with the edges between them.
@jess/json
Read and write JSON: RFC 8259 in, serde-shaped documents out, and a plain-table writer for what people read and diff.
@jess/yaml
Read and write YAML 1.2.2: the Core schema, anchors and aliases, explicit tags, several documents in one text, and block-style output.
@jess/data/toml
Read and write TOML: tables with key order, float and datetime markers, and exact 64-bit integers.
@jess/data/value
Build a value to write as JSON, YAML, or TOML: ordered maps, arrays, variants, forced floats, and the one null.
@jess/l10n
Localized text: bundles of ICU MessageFormat messages, resolved through the locale chain.
@jess/backup
Overwrite a file the way jess tools do: what was there goes to the next free .bak first, never over an earlier one.
@jess/http
Fetch one resource over HTTP or HTTPS: GET and HEAD, bounded in bytes and time, redirects followed under the same rules as the first request.
Files
Files and folders are @dream/fs, L3i's file module: what jess adds is the capability gate and @jess/backup.
Regular expressions
Regexes are bytes.regex, from L3i's @dream/bytes: Rust's regex crate over bytes, in linear time, with 0-based positions.
The @dream modules
The native primitives under jess: files, bytes, processes, the network, and text, from L3i, each behind a named capability.