model-x-studio README

The project's README from github.com/ashemag/model-x-studio. As one markdown file: README.md.

Model X Studio

Interactive 3D Tesla Model X studio with a circular display platform, component descriptions, individual-piece isolation, and a progressive explosion slider covering all 334 mesh pieces.

Local development

Requires Node.js 22.13+ and npm.

npm ci
npm run dev -- --port 3015

Vercel

Import this repository into Vercel with the repository root as the project root. The checked-in vercel.json builds the browser application with npm run build:vercel and serves dist/vercel. No environment variables or database are required.

The Vercel entry point reuses the same React page, styles, component library, Three.js scene and local model assets as the existing development app. The original npm run build remains available for the Vinext / Cloudflare output.

Configuration reference: https://vercel.com/docs/project-configuration/vercel-json

Validation

npx tsc --noEmit
node --experimental-strip-types scripts/validate-explosion.mjs
npm run build:vercel

The geometry check verifies 334 distinct layout slots and camera coverage at three viewport proportions. It is not a browser frame-rate measurement.

Model source and scope

The Model X asset is by cgi Moon on BlendKit, used under the BlendKit Royalty Free license. Asset redistribution is subject to that license; this repository is private and the asset is embedded in the application.

This source depicts a pre-refresh Model X, with an unverified exact model year. The 334 pieces are artist-authored mesh islands, not verified Tesla service-part identifiers. Battery, drive units and suspension are illustrative geometry. This is an independent educational project, not a complete OEM parts catalog or a Tesla-affiliated product.

model-x-studio (ashemag/model-x-studio)

Searching Database…

What is this?It is an interactive 3D Tesla Model X studio in the browser: a circular display platform with component descriptions, individual-piece isolation, and a progressive explosion slider covering all 334 mesh pieces of the car.
Is this a configurator I can customize, or just a viewer/explorer?It is a viewer/explorer, not a configurator: you rotate the car on a circular platform, isolate individual components, and drag a slider to progressively explode all 334 pieces, with no purchasing or customization features.
How do I run this locally or deploy it?Clone the repo and run it with Node.js, using vinext for local development; to deploy, import the repository into Vercel as-is since a checked-in vercel.json already builds it with npm run build:vercel and serves dist/vercel.
Do I need anything besides Node and npm?No. You just need Node.js 22.13+ and npm; the Vercel deployment path needs no environment variables or a database, since the model assets are bundled in the repo.
Is this an accurate Tesla parts catalog?No. The 334 pieces are artist-authored mesh islands rather than verified Tesla service-part identifiers, and the battery, drive units, and suspension are illustrative geometry only.
Can I reuse the 3D model asset?The Model X model itself is a third-party BlendKit asset, not something this repo's own license covers, so reuse is governed by BlendKit's terms rather than this project.
What does the explosion slider actually do?Dragging it progressively pulls all 334 mesh pieces outward from the chassis in stages, letting you see internal structure that is normally hidden.
Where does the 3D model come from?The Model X mesh is a purchased asset by 'cgi Moon' on BlendKit, used under BlendKit's Royalty Free license and embedded directly in the app rather than sourced from Tesla.
Can I deploy my own copy?Yes: import the repo into Vercel and it builds automatically via the checked-in vercel.json (npm run build:vercel), or use the default npm run build path for the Vinext/Cloudflare Workers output.
How is the 334-piece layout validated?A geometry check confirms there are exactly 334 distinct layout slots with proper camera coverage at three viewport proportions; it checks layout correctness, not browser frame-rate performance.
Creator
ashemag
Size
10.3 MB
Stars
265
Updated
CommitSep 04
Age
1mo
Commits · 90 Days