Skip to content

Limits and troubleshooting

React Forge exposes current budgets through limits and capabilities. A resource-limit or unsupported-package error is explicit; it does not silently flatten content or download a replacement dependency.

ResourceCeiling
Office input/output and PDF output256 MiB
Expanded Office package512 MiB
ZIP entries / individual part10,000 / 64 MiB
XML depth / nodes per part128 / 1,000,000
Newly rendered React tree16 MiB, depth 48, 20,000 nodes
Individual image64 MiB and 64 million pixels
Registered assets together256 MiB

An explicit font is bounded to 64 MiB. Existing PPTX constraints include 1,000 slides and tables up to 1,000 rows by 128 columns. Chart expansion is bounded to 200,000 cells and XLSX merge expansion to 250,000 cells. Figma images are limited to 10 MiB and 64 million pixels each. Check the installed package's limits and capabilities for the applicable full set.

Common failures

Symptom or codeRecovery
unsupported_package or missing native packageVerify Node.js 24, supported OS/CPU/glibc, and enabled optional dependencies; reinstall the matching package version.
missing_fontInstall a font covering the required characters or call registerFont(); check the consuming Office environment too.
invalid_target or unsupported_editInspect the imported file again, choose a supported nonoverlapping region, and export to a path distinct from the source.
conflict or existing outputChoose a new output path or explicitly request overwrite of a separate destination. Reimport after an external source change.
resource_limit or layout_overflowReduce document, image, or indivisible layout size; inspect ForgeError.code and safe stage context.
cancelled, disposed, or unknown_outcomeInspect any published local file or Figma receipt before retrying; cancellation cannot reverse completed publication.

ForgeError.code separates malformed input, unsupported edits, target conflicts, resource limits, missing fonts, overflow, cancellation, I/O, and React-render failures. Diagnostics provide operation/stage, revision, duration, and stable classification without source text, XML, bytes, credentials, or host paths. Subscriber failures do not change session outcomes. Do not send private document content when reporting a problem through GitHub issues.

Boundaries

Local document work has no hosted service, telemetry, URL fetching, automatic recovery, runtime converter, or automatic timeout. Figma is the explicit remote exception and has separate receipt and retry rules. Integrators are responsible for authenticating their own callers and governing process-wide resources; task code is trusted and runs with caller permissions.