renderer-puppeteer-client
Enterprise Part of the commercial Kumiko Enterprise offering — not in the open framework.
A renderer-foundation plugin that handles kind="document-pdf" and kind="image-snapshot" by forwarding the render request over HTTP to a separately deployed puppeteer-service. Configure the service endpoint and auth token via PUPPETEER_SERVICE_URL and PUPPETEER_AUTH_TOKEN env vars. The client retries on 5xx and network errors with exponential backoff (default 3 retries); 4xx responses fail immediately. The plugin returns raw bytes — callers are responsible for persisting to S3 or streaming to the client. Register it alongside renderer-foundation and reach it through foundation.createRendererForTenant({ kind: "document-pdf" }).render(...). Use this when you need PDF generation or screenshot capabilities without bundling a browser into the app process.
Build it yourself
Section titled “Build it yourself”This Enterprise implementation is optional. If you need a narrower or domain-specific version, you can build a renderer adapter with Kumiko’s public extension points.
Use this package when you want the maintained implementation, its existing contracts, and the surrounding operational behavior. A custom implementation is not drop-in compatible automatically: your app owns its authorization, validation, rendering output, tests, security review, and production operations.
Start with Features and composition and Renderer foundation.
How it fits
Section titled “How it fits”What this feature needs to run (Requires).
flowchart TB
n_renderer_puppeteer_client["renderer-puppeteer-client"]
subgraph how_reqs["Requires"]
n_renderer_foundation["renderer-foundation"]
end
n_renderer_foundation --> n_renderer_puppeteer_client
Dependencies
Section titled “Dependencies”- Requires:
renderer-foundation - Activation: always on (not toggleable)
Extensions & cross-feature APIs
Section titled “Extensions & cross-feature APIs”- Registers extension:
renderer→puppeteer