# PDF sidecar

The PDF sidecar is the service that Fabricate uses to render PDFs.

For information on how to deploy Fabricate, go to [Deploying and managing a self-hosted instance](/fabricate/self-hosting-fabricate/deploying-and-managing-a-self-hosted-instance.md).

This page only covers the configuration options that are used to connect Fabricate to the PDF sidecar.

## PDF sidecar container option

Set the following environment variable on the PDF sidecar container:

{% code overflow="wrap" lineNumbers="true" %}

```
PDF_SOCKET_PATH=  # Unix socket path to communicate between Fabricate and the PDF sidecar.
```

{% endcode %}

Use a path that is available to both the PDF sidecar container and the Fabricate container.

This is usually a shared Docker volume that is mounted into both containers.

## Fabricate options

In `.env`, set the following options:

{% code overflow="wrap" lineNumbers="true" %}

```
FABRICATE_PDF_SOCKET_PATH=  # Unix socket path to communicate with the PDF sidecar.
RENDER_TIMEOUT_MS=  # Timeout in milliseconds for PDF rendering.
```

{% endcode %}

### How these options work

* `FABRICATE_PDF_SOCKET_PATH` — Uses a Unix socket to connect Fabricate to the PDF sidecar.
* `RENDER_TIMEOUT_MS` — Sets the PDF rendering timeout in milliseconds.

If you use `FABRICATE_PDF_SOCKET_PATH`, it should match the shared socket path used for `PDF_SOCKET_PATH`.

That path must be accessible to both containers.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tonic.ai/fabricate/self-hosting-fabricate/configuring-fabricate/pdf-sidecar.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
