Repository navigation
Template
If you only register your pack’s documents and never query the catalog, copy this template. You do not write waitReady / add / register. You do not UUID-depend on the host.
- Download
bedrock-registry-register.jsandbedrock-registry-client.jsfrom this client’s GitHub Releases. Put both in your behavior packscripts/folder withmcbe-ipc.js(Installation). - Edit
SOURCE(lowercase pack id). Uncomment the kind rows you ship. Type ids are`${SOURCE}:name`. Delete or leave empty the kinds you do not add. - From your pack entry:
import { registerPack } from "./bedrock-registry-register.js";
void registerPack();If a Bedrock Registry host is already in the world (another pack queries the catalog), your documents are published. If not, nothing happens — no warn.
npm: keep the template, change its client import to @mcbe-registry/client/bedrock.
Fluid and gas amount values use BOTTLE, BUCKET, and mb(n) from the client (do not hardcode). Loot chance is percent 0–100 (100 = always). The loot example lists netherite, diamond, and iron pickaxes on tools.
Pack document: id is get("pack", id); document source is the pack list index; namespace is the mymod: prefix on type ids. SOURCE on register is who owns every table in persist. The template sets id / source / namespace to SOURCE.
Recipe examples are crafting table, then furnace, then a custom station.
This file does not get, list, match, or subscribe. For those, use Quick start.