Download your site (static export)
Export a published site as a self-contained zip that runs on any static web host, plus the older scene.json / GLB export path.
Open in the interactive manual →The interactive version has full-text search, a table of contents, and light/dark themes.
Your published site doesn't have to live only on 3dcms.info. Publish a scene, open the share dialog, and hit Export site (.zip). You get a single zip containing the whole thing: the 3D viewer, your scene, and every model, image, audio file and texture it references.
Hosting the zip
Unzip the folder and upload it (keeping its structure) to any static web host: nginx or Apache, S3/CloudFront, GitHub Pages, Netlify, an FTP web root. It works from a domain root or from a subfolder, because every link inside the bundle is relative. Then open the URL of index.html.
What's inside
- index.html: the 3D viewer; start here.
- scene.json: your scene's content.
- assets/: the viewer code plus your uploaded media.
- textures/, backdrops/, draco/, fonts/: the built-in files your scene happens to use, including the 3D text typeface.
- README.txt: the same hosting notes, packed alongside.
Honest limitations
- It's a snapshot. Republishing on 3dcms.info does not update a copy you already downloaded. Export again for a fresh one.
- Anything that needs the 3dCMS server is inactive in the copy: reactions, view stats, and the report button.
- 3D text in Latin characters works offline: the typeface is packed into the bundle. Characters outside it (CJK, emoji, arrows) are still fetched from a font CDN the first time they render, exactly as on the live site.
- Hot-linked images and audio don't come across. On 3dcms.info a file that lives on another website is fetched through a same-origin proxy, and a static host has no equivalent, so it's simply missing in the copy. Upload the file to your library and republish before exporting. Streaming video the browser loads directly (a YouTube embed, an HLS URL in a video block) still works, because nothing proxies those.
- Models ship at full size. The live site can hand a phone a pre-shrunk copy of a texture on request; a static host can't, so the bundle carries the masters. It looks identical and uses the same video memory, the visitor just downloads more, so a texture-heavy scene is a heavier page here than on 3dcms.info.
- No text version. A visitor whose browser can't run WebGL 2 is told so and stops there. The plain-text mirror of every page is server-rendered on 3dcms.info and isn't part of the bundle, so the copy doesn't offer a link to it rather than sending them to your host's 404.
- The bundle has one entry point. In-world page travel works while exploring, but reloading a deep /3d/… address gives your host's 404. Link people to the root URL.
- Very large sites are refused (there's a size ceiling in the hundreds of megabytes). If you hit it, trim heavy videos or models, republish, and retry.
Only the site's owner can export it, and the button appears once the scene has actually been published.
The older export path
If you'd rather run your own build, Settings ▸ Deployment still has the raw exports:
- Export scene.json: saves your scene so you can run a build and deploy the output to any static host.
- Export GLB: downloads the whole scene as a single GLB model.
- Deploy target: optionally point at a Netlify or Vercel build/deploy hook (or a custom endpoint) so an export can kick off a deploy.