/model-viewer

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

Primary LanguageTypeScriptApache License 2.0Apache-2.0

The <model-viewer> project

This is the main Github repository for the <model-viewer> web component and all of its related projects.

Getting started? Check out the <model-viewer> project!

The repository is organized into sub-directories containing the various projects. Check out the README.md files for specific projects to get more details:

👩‍🚀 <model-viewer> • The <model-viewer> web component (probably what you are looking for)

🌐 modelviewer.dev • The source for the <model-viewer> documentation website

🖼 render-fidelity-tools • Tools for testing how well <model-viewer> renders models

🎨 shared-assets • 3D models, environment maps and other assets shared across many sub-projects

📦 3DOM • A generic glTF scene graph API that enables operations on 3D models while abstracting the in-memory representation.

Development

When developing across all the projects in this repository, first install git, Node.js and npm.

Then, perform the following steps to get set up for development:

git clone --depth=1 git@github.com:google/model-viewer.git
cd model-viewer
npm install
npm run bootstrap

Note: depth=1 keeps you from downloading our ~3Gb of history, which is dominated by all the versions of our golden render fidelity images.

The following global commands are available:

Command Description
npm run bootstrap Bootstraps the project for development and cross-links sub-projects
npm run build Runs the build step for all sub-projects
npm run build:legacy-support Builds JS bundles that have IE11 support
npm run serve Runs a web server and opens a new browser tab pointed to the local copy of modelviewer.dev (don't forget to build!)
npm run test Runs tests in all sub-projects that have them
npm run clean Removes built artifacts from all sub-projects

You should now be ready to work on any of the <model-viewer> projects!