> ## Documentation Index
> Fetch the complete documentation index at: https://www.renderjuice.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Prepare a Blender project with Blend Project Packer

> Create a Renderjuice-ready Blender project package with the local Blend Project Packer extension.

Renderjuice renders your `.blend` on another machine. Blend Project Packer helps
you create an upload package that includes the scene file and the files your
scene depends on.

It checks the saved project, collects render dependencies, rewrites fragile paths
in a copy, and creates a portable folder or zip you can inspect before uploading.

<Warning>
  If your scene depends on custom Blender add-ons or extensions, upload those
  add-ons to Renderjuice separately and select them in the render job. The packer
  can include add-on installation copies in the local package, but Renderjuice
  does not install add-ons from the project zip yet. Read
  [Using add-ons and extensions with Renderjuice](/rendering-with-blender/addons)
  before rendering an add-on-dependent scene.
</Warning>

## Recommended workflow

Use this path when you want the safest first upload to Renderjuice.

<Steps>
  <Step title="Install the extension">
    Install Blend Project Packer from the
    [Blender Extensions listing](https://extensions.blender.org/add-ons/blend-project-packer/).

    After enabling it, open the 3D Viewport, press `N`, and select the
    **Project Pack** tab.
  </Step>

  <Step title="Save your .blend">
    Save the project before packing. The packer reads the saved file on disk and
    writes a separate portable copy, leaving your working `.blend` unchanged.
  </Step>

  <Step title="Leave output as Folder">
    **Folder** is the best default. It is faster than zip output and lets you
    inspect the package before uploading.

    Use **Zip** only if you want the extension to create a single archive
    directly.
  </Step>

  <Step title="Click Build Portable Package">
    The extension scans the scene, checks dependencies, and creates a portable
    package beside the current `.blend` unless you changed the output directory
    in the extension preferences.

    <Frame caption="Project Pack panel after a folder package was created">
      <img src="https://mintcdn.com/renderjuice/gsq992j09Krr4Ec0/images/blend-project-packer/project-pack-panel.png?fit=max&auto=format&n=gsq992j09Krr4Ec0&q=85&s=ac50aac66ba60265ffcdd2b71a39ea3a" alt="Blend Project Packer panel showing folder output, build button, done state, and dependency counts" width="412" height="463" data-path="images/blend-project-packer/project-pack-panel.png" />
    </Frame>
  </Step>

  <Step title="Review warnings before continuing">
    If the project check finds missing files, unbaked caches, or add-on decisions,
    Blender shows a review dialog.

    <Frame caption="Review dialog for missing files, unbaked caches, and add-on decisions">
      <img src="https://mintcdn.com/renderjuice/gsq992j09Krr4Ec0/images/blend-project-packer/review-dialog.png?fit=max&auto=format&n=gsq992j09Krr4Ec0&q=85&s=589ef8b269fea43b879d9c7af2c9ce8a" alt="Blend Project Packer review dialog showing a missing file warning, an unbaked simulation cache warning, and add-on bundle choices" width="805" height="463" data-path="images/blend-project-packer/review-dialog.png" />
    </Frame>

    Fix anything that affects the render. Continue only when you know the warning
    is irrelevant to the scene, shot, or frame range you plan to render.
  </Step>

  <Step title="Upload add-ons separately if needed">
    If the review dialog lists add-ons that affect opening or rendering the scene,
    keep the relevant add-ons selected so the packer can copy their installed
    archives into the package.

    After packing, open the portable folder or zip and look under
    `addons/legacy/` and `addons/extensions/`. Upload each needed add-on zip on
    the Renderjuice **Add-ons** page, wait for validation, then select those
    add-ons in the render job.

    Follow
    [Using add-ons and extensions with Renderjuice](/rendering-with-blender/addons)
    for the upload and selection steps.
  </Step>

  <Step title="Zip and upload the package">
    If you used **Folder** output, zip the generated portable folder and upload
    that zip to Renderjuice.

    If you used **Zip** output, upload the generated `*-portable.zip`.

    If your scene depends on custom add-ons at render time, upload and select
    those add-ons separately in Renderjuice. A project zip does not install
    add-ons on the render node by itself, even when the packer bundled add-on
    installation copies into the local package.
  </Step>
</Steps>

## What the packer checks

Blend Project Packer is useful when the project has more than a simple `.blend`
file:

* images, textures, image sequences, UDIM tiles, fonts, sounds, movie clips, or
  VDB files
* linked `.blend` libraries
* Alembic, mesh cache, multires, or baked simulation cache folders
* compositor or render output paths outside the project folder
* add-ons that may affect opening or rendering the scene, so you know what to
  upload separately in Renderjuice

It also writes `blend-project-pack.json`, a packaging receipt with copied files,
path rewrites, linked-library scan results, cache moves, checksums, warnings, and
add-on decisions. You normally do not need to edit it.

## Blender Pack Resources vs Blend Project Packer

Blender's built-in **File > External Data > Pack Resources** is enough for some
simple scenes. It embeds Blender-packable data into the `.blend`.

Blend Project Packer is for project packaging. Use it when **Pack Resources**
does not cover the whole render setup, especially when your project needs:

* cache folders that cannot be embedded into a `.blend`
* linked libraries and their dependencies
* image sequences or UDIM tiles expanded into actual files
* external render or compositor output paths rewritten to portable paths
* a preflight report before uploading to a render farm

If **Pack Resources** already gives you a `.blend` that opens and renders
correctly on another machine, you may not need the packer for that project.

## What the output contains

The exact folders depend on your scene, but a portable package usually looks
similar to this:

```markdown theme={null}
my-project-portable/
|-- my-project.blend
|-- blend-project-pack.json
|-- textures/
|-- caches/
|-- libraries/
|-- sounds/
|-- fonts/
|-- movieclips/
|-- volumes/
|-- renders/
```

Upload the zip that contains this folder structure, not the original working
folder unless you already know it contains every dependency.

## How to read warnings

| Warning                          | What to do                                                                                                                                                                 |
| -------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Missing file                     | Relink the file or remove the unused reference before packing.                                                                                                             |
| Unbaked simulation cache         | Bake the simulation in Blender, save the `.blend`, then pack again.                                                                                                        |
| Add-ons to include               | Keep add-ons selected when they affect opening or rendering the scene, then upload the generated add-on zips separately through [Add-ons](/rendering-with-blender/addons). |
| Output paths outside the project | Let the packer rewrite them into the portable project.                                                                                                                     |

## Boundaries

Blend Project Packer helps catch common portability problems, but it does not:

* bake simulations for you
* recover files that are missing on disk
* prove that every custom add-on behaves correctly on Linux render nodes
* install add-ons on Renderjuice from the project zip
* submit the render job to Renderjuice

Related guides:

* [Preparing your Project](/renderjuice-101/preparing-blender-file)
* [Why It Works Locally But Not On Renderjuice](/renderjuice-101/works-locally-not-on-renderjuice)
* [Using add-ons and extensions with Renderjuice](/rendering-with-blender/addons)
