Skip to the article
3dCMS Knowledge Base
Contact Open the editor
Importing & Assets

Import a real website

Point at a URL and 3dCMS crawls it, pulling pages, images, copy, and links into rearrangeable 3D panels. A fast starting point; how much comes through depends on the site.

Open in the interactive manual →

The interactive version has full-text search, a table of contents, and light/dark themes.


This is the feature that turns "build a 3D site" into "point at a URL." Web import crawls a real website and lays its pages out as navigable 3D page surfaces: copy, images, links, and theme included. Find it under File ▸ Import ▸ Website… (the dialog is titled Import Real Website). Arriving from the home page's Turn your site into 3D button opens it on a fresh, empty scene, so the import never lands on top of the starter or your last template; if this browser has unsaved work, that work is kept and the dialog opens over it instead.

Think of it as an asset harvester Import is the fastest way to get your real content into a scene (your words, your images, your link structure) so you can rearrange it in 3D instead of starting from a blank page.

Running an import

  1. Enter a URL

    Type any address in Website URL (3dCMS adds https:// if you skip it).

  2. Choose how deep to crawl

    Crawl depth (1–5) sets how many link-levels to follow. Depth 1 is a single page; higher follows the navigation outward. Max pages caps the total.

  3. Pick a 3D layout

    Hub & Spoke puts the home page at the center with others orbiting it; By Nav Section clusters pages by the site's top-level sections.

  4. (Optional) tune the advanced options

    Panel aspect and width, spacing, max images per panel, and more.

  5. Keep Copy images into my library ticked

    It is on by default: every picture the imported pages show is copied into your Asset Library, so visitors see it after you publish. It uses your storage, and the import says how many it copied.

  6. Import

    Click Import Website. A progress bar counts "Crawling… X / Y pages," then the analysing and copying steps, then "Import complete!" The first page is selected and framed for you, and anything worth knowing (images copied, pages left out) is listed under it.

Changed your mind halfway through a deep crawl? The dialog's left button becomes Stop import while one is running: it aborts the crawl on the spot and leaves your scene untouched, so a 50-page import is never something you have to sit through or reload the editor to escape.

What gets harvested

For each page, 3dCMS pulls out:

  • Copy: title, hero text, summary, meta description, content sections, FAQ, testimonials, reading time, and organization info.
  • Images: the hero plus a gallery of up to 40 pictures per page (the panel shows your max-images setting; the import tells you when a page had more).
  • The link graph: nav and links, with cross-page links rewired to the imported pages so navigation works in 3D.
  • Theme: the accent color is lifted from the page (its theme-color, brand CSS variables, link and button colors), on every page including the home page. A page keeps the background it declares, white included; only a page whose background could not be read gets a dark panel so the accent reads in 3D. When a site declares no color, a default accent is used.

The crawl stays same-origin, skips non-content paths (login, cart, search, admin), and de-duplicates tracking-tagged URLs. Re-importing a site refreshes its existing page surfaces in place (it asks first): each page keeps its position, its links from signs and rooms, and the text you edited, and takes the site's current content. A page the new crawl did not reach is left as it is, and the scene keeps the name you gave it.

A few honest limits
  • Extraction quality varies a lot by site: clean marketing/portfolio pages harvest best; dense, app-like, or heavily-scripted sites yield much less, and brand colors or long text can come through rough.
  • An image that is not copied (you unticked the box, it is an SVG, it was too big, or your storage filled up part way) streams from the original site. That matters after you publish, because a picture living on someone else's server loads through a proxy that only answers a signed-in caller: you keep seeing it while you build, a visitor gets an empty panel. The import says how many it copied, and Undo removes the pages but leaves the copies in your library.
  • A page drawn entirely by JavaScript imports only what its server sends (the import says so), and a site that answers with a bot check is refused rather than imported as an empty panel.
  • Pages come in as panels, not loose per-element objects.
  • Images that the source site loads lazily via JavaScript may not be captured (the crawl reads the server's HTML).
  • On the hosted app you'll need to be signed in: the crawl runs through an authenticated proxy.
  • A crawl stops on its own at 100 pages or 24 MB of buffered HTML, whichever comes first, whatever you set Max pages to. A deep crawl of a large site used to hold hundreds of megabytes in the tab and take it down with it; now it finishes early with what it has.
  • A URL that answers with something other than an HTML page (a PDF, an image, a JSON endpoint) is refused rather than parsed as markup. And if part of the site sits behind a sign-in, the import warns you that what came through may be the login screen rather than the content behind it.
Spotted something off, or want a topic covered? Tell us, a person reads every message.