Introduction
Renza is the neutral, governed home for AI-generated documents — starting with slide decks. An artifact you made anywhere — Claude, any model, or by hand — becomes a hosted, presentable, commentable, version-tracked, properly permissioned document.
Your tools now generate work as HTML, the format models write best. A .pptx or .docx is a
binary object graph an agent can't open and rewrite; HTML is declarative text a model can hold in
its head and regenerate wholesale. Renza is where that HTML goes to live — not a repository, not a
chat window, but a document home with sharing, comments, versions, and the right people.
What Renza does
- Hosts your artifact as-is. Arbitrary HTML, served exactly as you made it. We never flatten your design into a template format.
- Understands the document. A deck is a sequence of slides, so Renza gives it present mode, keyboard navigation, thumbnails, and per-slide comments.
- Makes review frictionless. Reviewers drop comments anchored to a slide and resolve them — no account required. Feedback survives across versions.
- Permissions like Drive. A share dialog you already know: people, link access, and roles.
- Stays neutral. Renza hosts no models and sells no inference. AI editing is bring-your-own, over MCP, on your own subscription.
What Renza is not
- Not a generator. We don't compete to make the artifact. bolt, v0, and Gamma own generation-and-edit; we make the artifact real once it exists.
- Not a closed format. We host arbitrary HTML, not a proprietary block format.
- Not an AI vendor. No models, no inference, no token metering — on any plan.
- Not Claude-native. Renza is the asset and the contract every tool acts on. Neutrality is the point.
Make your first deck
Get a key first — renza login pairs the CLI through your browser, or mint one in the dashboard.
See Authentication for the details. Then publish an HTML deck:
renza publish deck.htmlcurl https://api.renza.io/v1/imports \
-H "Authorization: Bearer $RENZA_API_KEY" \
-X POST \
-H "Content-Type: application/json" \
-d '{
"source": "paste",
"html": "<!doctype html><section data-renza-slide>Slide 1</section>…",
"title": "Q3 Board Deck"
}'import { createRenzaClient } from "renza-sdk";
const renza = createRenzaClient({ apiKey: process.env.RENZA_API_KEY! });
const imported = await renza.imports.create({
source: "paste",
html: "<!doctype html><section data-renza-slide>Slide 1</section>…",
title: "Q3 Board Deck",
});All three do the same thing: renza publish is the porcelain over
POST /v1/imports — it finds your HTML, imports it as a deck, and
opens the live link. The full journey is in Import a deck.
Start here
- New to Renza? Read Core concepts to learn the vocabulary — decks, artifacts, slides, versions, grants.
- Have a deck to bring in? Follow the guides — import, sharing, present mode, comments and versions.
- Building on Renza? The CLI, API reference, and SDK cover the programmatic surface, and MCP & BYO-AI covers agent editing.