Skip to content

Install

Rendlio is one self-contained binary called rendlio. There is no runtime to provision, no service to register, no Office or LibreOffice on the host, and no network access at any point — installing it is just getting the binary onto the machine and putting a licence file next to it.

Three channels ship the same engine: a .NET global tool, an OCI container image, and per-platform archives. Same flags, same exit codes, same bytes out.

ChannelNeeds on the hostBest for
Rendlio.Tool (.NET global tool).NET 10 SDKDeveloper machines and build agents that already have .NET
ghcr.io/rendlio/rendlio (container)A container runtimeCI runners, container platforms, hosts with no .NET
Self-contained archiveNothingAir-gapped hosts, appliances, anywhere without a package feed

The quickest path when a .NET 10 SDK is already present. It puts the rendlio command on your PATH, and updates come through the same channel:

Terminal window
dotnet tool install -g Rendlio.Tool
dotnet tool update -g Rendlio.Tool

Confirm what you got — the version, the build’s release date, and the schema versions it speaks:

Terminal window
rendlio version

For CI runners and container platforms: no .NET on the host, nothing else to provision. The same image runs on x64 and ARM64.

Terminal window
docker pull ghcr.io/rendlio/rendlio:latest

Mount a working directory and convert:

Terminal window
docker run --rm -v "$PWD:/work" -w /work ghcr.io/rendlio/rendlio \
convert book.xlsm -o book.pdf --format pdfa --report report.json

Or pipe through stdin/stdout and mount nothing at all. Stdout carries only document bytes; every diagnostic goes to stderr, so piping is safe by design:

Terminal window
cat in.xlsx | docker run --rm -i ghcr.io/rendlio/rendlio convert - -o - > out.pdf

The container wraps the exact same binary as the global tool. Passing licences into it, setting hard memory and CPU limits, and gating pipelines on the exit code are covered on Deployment.

One archive per platform, everything inside — no .NET install, no package manager. Unpack, drop Rendlio.license next to the binary (or in ~/.rendlio/), convert.

PlatformRuntime idArchive
Windows x64win-x64rendlio-win-x64.zip
Linux x64linux-x64rendlio-linux-x64.tar.gz
Linux ARM64linux-arm64rendlio-linux-arm64.tar.gz
macOS Apple Siliconosx-arm64rendlio-osx-arm64.tar.gz
Terminal window
curl -LO https://github.com/rendlio/rendlio/releases/latest/download/rendlio-linux-x64.tar.gz
tar -xzf rendlio-linux-x64.tar.gz
./rendlio version

Deterministic output is byte-identical across all four platforms — the same workbook and the same options produce the same bytes wherever you run them.

Every release is cosign-signed from the public build pipeline and ships a SHA256SUMS file plus a CycloneDX software bill of materials (rendlio.sbom.json). Verification is the point: signatures you never check are decoration.

Verify the container image (keyless, against the repository identity):

Terminal window
cosign verify ghcr.io/rendlio/rendlio:latest \
--certificate-identity-regexp 'https://github.com/rendlio/rendlio/' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com

Verify an archive — each one publishes a matching .sigstore.json bundle in the same release:

Terminal window
cosign verify-blob rendlio-linux-x64.tar.gz \
--bundle rendlio-linux-x64.tar.gz.sigstore.json \
--certificate-identity-regexp 'https://github.com/rendlio/rendlio/' \
--certificate-oidc-issuer https://token.actions.githubusercontent.com

Check the checksums, which cover every artifact in the release:

Terminal window
sha256sum -c SHA256SUMS --ignore-missing

The SBOM lists every component in the build, machine-readable — hand it to procurement as-is. All of it is linked from Downloads.

Without a licence, Rendlio still converts with full features: output carries a diagonal evaluation watermark and the run emits warning W9001, so watermarked runs exit 1 at best and never 0. To run watermark-free, put the licence where the engine looks. It resolves at most one source — first match wins, no merging:

  1. --license <path> on the command line
  2. RENDLIO_LICENSE — a file path or the licence text itself, inline
  3. Rendlio.license in the current working directory
  4. ~/.rendlio/Rendlio.license
  5. Nothing found ⇒ evaluation watermark mode + W9001

--license community asserts the Community tier when a community licence file is present; bare community without a minted file is invalid (exit 3) — the free tier still requires the self-serve-minted file.

Verification is a pure offline signature check against public keys embedded in the binary. No activation, no licence server, no phone-home — which is why the same file works unchanged on air-gapped hosts. Check what the engine resolved:

Terminal window
rendlio license info
Terminal window
rendlio convert book.xlsx -o book.pdf --report report.json

Exit code 0 means clean, 1 means rendered with warnings, 2 means the workbook contains something Rendlio does not render faithfully — and report.json names every one of them with a location. The full ladder is in the CLI reference.

  • Quickstart — first faithful PDF plus report, in five minutes
  • CLI reference — every command, flag, and environment variable
  • Deployment — Docker, GitHub Actions, GitLab CI, air-gapped hosts, resource limits
  • Security model — what the engine does with a file it cannot trust
  • Licensing guide — which tier you are, and how the licence file works

View as Markdown