Skip to main content

Built-in processing

Builder runs the processing needed by the files in your project. Each stage works on temporary copies and passes its output to the next stage.

StageWhat it doesLearn more
manifestResolves manifest variants, project metadata and local pack dependenciesProjects and packs
generatorEvaluates TypeScript content templates and writes Minecraft JSONGenerate JSON
guidesCompiles Markdown and MDX into in-game guide pagesGuide authoring
i18nCompiles translation modules into language files and runtime dataTranslation authoring
ui-compilerCompiles JSX screens and application UI into pack resourcesUI compiler
bundlerBundles the JavaScript or TypeScript entries declared by script manifestsScript settings

Select stages​

Omit stages to detect inputs automatically. Disable a stage with false, or supply an options object to enable it with those settings:

{
"stages": {
"generator": false,
"bundler": { "debug": true }
}
}

These fields belong inside a profile. Stages run in the table's order; content generated earlier is available to later stages.

Manifest​

Use manifestPath to select a variant such as packs/gameplay/manifest.test.json. A variant can extend ./manifest.json; objects merge, while arrays and scalar values replace the inherited values. Restate the complete modules and dependencies arrays when changing them.

Generator​

A default-exported object produces one JSON file. A [name, content, values] tuple produces several files. Generate JSON covers source locations, editor types and both patterns.

Guides​

Place guides under their owning pack's guides/ directory. Guide and UI compilation require the matching runtime packages in the project.

Translations​

Place locale modules under the owning pack's i18n/ directory. Set client: false when translations are needed only by scripts.

UI compilation​

UI, guides and client translation output use manifest dependencies to find the owner's resource pack. Set owner and resourcePack when a project has several possible destinations. A resource pack is required only for features that emit client resources.

Screens rooted at Experimental_OreUI also package version-matched client resources. The experimentalOre object accepts clientRoot for the Windows Minecraft Content directory, resourceRoots for fallback resource packs and dynamicTextures for PNGs selected by live image values. The selected output RP takes priority over fallback roots. These settings are used only when the build contains an Ore screen.

See Experimental Ore screens for project configuration, the supported client target and runtime limits.

Script bundling​

Each manifest script module supplies its entry, such as scripts/main.js. Builder finds the corresponding authored TypeScript or JavaScript source and emits the declared JavaScript file. Source TypeScript is omitted from the exported pack.

Native Minecraft server API imports remain external. JavaScript helper packages, including @minecraft/vanilla-data and @minecraft/math, are bundled into the script.

Next steps​