Publish
publish uploads the demo, prints its URL, and prints the sized iframe snippet for it.
Publishing again updates the same URL. Embeds you have already pasted keep working and pick up the new version. --new mints a separate URL and leaves the old one serving the old demo.
Your files do not change. publish uploads each file the config references and rewrites those paths to hosted URLs in the copy it sends. The paths in your demo.config.json stay relative. The one exception is a demo with no id: publish writes a new one to the file first, because the hosted URL is keyed on it. Commit it.
With more than one demo in the project, name the one to publish:
login --token <token> or the INTERACTIVE_DEMO_API_TOKEN environment variable skips the browser. See login and publish in the CLI reference.
Host it yourself
build writes one self-contained folder per demo:
dist/, or just one dist/<slug>/, and note the URL of index.html.
build also prints the inline iframe and pop-up snippets for the first demo, with a placeholder host to replace with wherever you deploy.
Three things to know:
- Run
validatefirst.buildcopiesassets/as-is. A media path with no file behind it is not caught, and the page 404s at runtime. - Cache
player.jslong andindex.htmlshort. The page embeds the demo config, so a rebuilt demo changesindex.html. The player only changes when you upgrade the runtime. - Recordings can be large. If your host has a file-size limit, keep video steps short. Capture already trims them to the motion.
player-fonts.css, fonts/, and backgrounds/ are optional. Delete them from a built folder and the player falls back to system fonts and a flat cover background.
Assemble the page yourself
A built page is the player plus a title bar. The player itself needs only this:Next
Sharing and embedding
Send the link, frame the page, or render it in React.
CLI reference
Every flag for
publish, build, embed, and login.
