3d-web-experience

Implements interactive 3D web experiences using Three.js, React Three Fiber, and Spline.

Updated Jul 7, 2026
One-click install
npx skills add https://github.com/singhaganesh/Urban-assist --skill 3d-web-experience-singhaganesh
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: 3d-web-experience
Source: https://github.com/singhaganesh/Urban-assist/tree/main/.cursor/skills/3d-web-experience
Command: npx skills add https://github.com/singhaganesh/Urban-assist --skill 3d-web-experience-singhaganesh

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @react-three/fiber, @react-three/drei, @splinetool/react-spline, gsap, @gltf-transform/cli.

What problem does it solve? Adding 3D to a website often leads to slow load times, broken mobile experiences, and unclear tooling choices. This Skill guides you through selecting the right 3D stack, optimizing models for the web, and building scroll-driven interactive scenes without sacrificing performance or usability. ## Core Features & Use Cases - 3D Stack Selection: Compare Spline, React Three Fiber, vanilla Three.js, and Babylon.js with a decision tree to pick the right tool for your project. - 3D Model Pipeline: Optimize models for the web with poly-count reduction, texture baking, GLB export, and gltf-transform Draco/WebP compression targeting under 5MB files. - Scroll-Driven 3D Scenes: Build camera movements, model rotations, and reveal effects tied to scroll position using @react-three/drei ScrollControls or GSAP ScrollTrigger. - Use Case: You are building a product landing page with a 3D product configurator. Use this Skill to compress the GLB model, load it in React Three Fiber with a progress indicator, and rotate the model as the user scrolls. ## Quick Start Ask the AI to build a scroll-driven 3D product viewer in React Three Fiber with an optimized GLB model and a loading progress indicator.

Frequently Asked Questions about 3d-web-experience

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a 3D model to a React website?

Use React Three Fiber with the useGLTF hook from @react-three/drei to load a GLB model inside a Canvas component. Wrap the model in Suspense with a loading fallback, and add OrbitControls for user interaction.

Should I use Spline or React Three Fiber for web 3D?

Spline is best for quick prototypes and designer-led workflows with low learning curve. React Three Fiber suits React apps needing complex scenes and high control, while vanilla Three.js gives maximum control outside React.

How do I compress GLB models for faster web loading?

Use the gltf-transform CLI with the optimize command, applying Draco mesh compression and WebP texture compression. Aim for under 100K polygons and under 5MB file size for web delivery.

Does 3D web content work on mobile devices?

Yes, but you must test on real devices, reduce rendering quality on mobile, and provide static fallbacks for low-end hardware. Unoptimized 3D drains battery and can crash weaker phones.

How do I make a 3D scene respond to page scrolling?

Use ScrollControls and useScroll from @react-three/drei to map scroll offset to model rotation or camera position. Alternatively, combine GSAP ScrollTrigger with Three.js to animate camera properties on scroll.

When should I avoid using 3D on a website?

Avoid 3D when a static image communicates the same information, when most traffic is low-end mobile, or when it does not serve a clear purpose like product visualization. Gratuitous 3D slows the site and hurts conversion.