@google/model-viewer

Easily display interactive 3D models on the web and in AR!

Usage no npm install needed!

<script type="module">
  import googleModelViewer from 'https://cdn.skypack.dev/@google/model-viewer';
</script>

README

A 3D model of an astronaut

<model-viewer>

Build Status NPM Bundlephobia Join the community on Spectrum

<model-viewer> is a web component that makes rendering interactive 3D models - optionally in AR - easy to do, on as many browsers and devices as possible. <model-viewer> strives to give you great defaults for rendering quality and performance.

As new standards and APIs become available <model-viewer> will be improved to take advantage of them. If possible, fallbacks and polyfills will be supported to provide a seamless development experience.

DemoDocumentationKanbanQuality Tests

Installing

The <model-viewer> web component can be installed from NPM:

npm install @google/model-viewer

It can also be used directly from various free CDNs such as unpkg.com:

<script type="module" src="https://unpkg.com/@google/model-viewer/dist/model-viewer.min.js"></script>

For more detailed usage documentation and live examples, please visit our docs at modelviewer.dev!

Important note about versions

Our goal for <model-viewer> is to be a consistent, stable part of your web platform while continuing to deliver cutting-edge features. We’ll always try to minimize breaking changes, and to keep the component backwards compatible. See our guide to contributing for more information on backwards compatibility.

For your production site you may want the extra stability that comes by pinning to a specific version, and upgrading on your own schedule (after testing).

If you’ve installed via NPM, you’re all set - you’ll only upgrade when you run npm update.

If you’re using unpkg.com, you can pin to a specific version by specifying it in the URL. Replace the <version> tag in the sample below with the full version number (like 0.10.0) to be pinned to.

<!-- Loads <model-viewer> for modern browsers: -->
<script type="module"
    src="https://unpkg.com/@google/model-viewer@<version>/dist/model-viewer.min.js">
</script>

Browser Support

<model-viewer> is supported on the last 2 major versions of all evergreen desktop and mobile browsers.

Chrome Firefox Safari Edge
Desktop
Mobile

<model-viewer> builds upon standard web platform APIs so that the performance, capabilities and compatibility of the library get better as the web evolves.

Development

To get started, follow the instructions in the main README.md file.

The following commands are available when developing <model-viewer>:

Command Description
npm run build Builds all <model-viewer> distributable files
npm run build:dev Builds a subset of distributable files (faster than npm run build)
npm run test Run <model-viewer> unit tests
npm run clean Deletes all build artifacts
npm run dev Starts tsc and rollup in "watch" mode, causing artifacts to automatically rebuild upon incremental changes