A Jennifer client for the Unraid API, the GraphQL API of Unraid 7.2 and newer: system and metrics, the array, disks, shares and parity checks, Docker containers, virtual machines, notifications, logs and API keys.
jvc add @deckyard/unraidThis vendors the deck to vendor/<scope>/unraid/. Without jvc, unpack the
src/ subtree of a release archive (<scope>-unraid-<version>.tar.gz) there.
import "@deckyard/unraid/" as unraid;
def c as unraid.Client init unraid.withApiKey(unraid.client("tower.local"), $key);
for (def ct in unraid.containers($c)) {
io.printf("%s %s\n", $ct.name, $ct.state);
}
unraid.startVm($c, unraid.vmByName($c, "win11").id);
Jennifer 0.26.0 or newer, default jennifer binary (net; not
jennifer-tiny). An Unraid server running 7.2 or newer, or the Unraid
Connect plugin, and an API key.
tools/check-all.sh # the full gate, as CI runs it
jennifer test src/unraid_test.j # the test overlay
tools/check-docs.sh # docs against the code
tools/pack.sh dist # build the release archiveLGPL-3.0-only, see LICENSE. Copyright (C) 2026 mplx <mplx@jennifer-lang.dev>.
tools/check-headers.sh checks every source file's SPDX header against
deck.toml.