aframe-webxr
Declarative web framework for building browser-based 3D, VR, and AR experiences using HTML and entity-component architecture. Use…
Browser-based 3D design tool with visual editor, animation, and web export. Use this skill when creating 3D scenes without code, designing interactive web experiences, prototyping 3D UI, exporting to React/web, or building designer-friendly 3D content. Triggers on tasks
Claude Code
$ npx -y skills add freshtechbro/claudedesignskills --skill spline-interactive --agent claude-code
Codex
$ npx skills add freshtechbro/claudedesignskills --skill spline-interactive -a codex -y
Cursor
$ npx skills add freshtechbro/claudedesignskills --skill spline-interactive -a cursor -y
Gemini CLI
$ npx skills add freshtechbro/claudedesignskills --skill spline-interactive -a gemini-cli -y
GitHub Copilot
$ npx skills add freshtechbro/claudedesignskills --skill spline-interactive -a github-copilot -y
OpenCode
$ npx skills add freshtechbro/claudedesignskills --skill spline-interactive -a opencode -y
Windsurf
$ npx skills add freshtechbro/claudedesignskills --skill spline-interactive -a windsurf -y
name: spline-interactive description: Browser-based 3D design tool with visual editor, animation, and web export. Use this skill when creating 3D scenes without code, designing interactive web experiences, prototyping 3D UI, exporting to React/web, or building designer-friendly 3D content. Triggers on tasks involving Spline, no-code 3D, visual 3D editor, 3D animation, state-based interactions, React Spline integration, or scene export. Alternative to Three.js for designers who prefer visual tools over code.
Spline is a browser-based 3D design and animation platform that enables creators to build interactive 3D experiences without requiring code or specialized software knowledge. It provides a collaborative visual editor for designing, animating, and exporting 3D scenes across multiple platforms.
**Key Features**:
**When to Use This Skill**:
**Alternatives**:
Spline organizes projects into scenes containing:
Reusable elements that can be:
Animations are defined as transitions between states:
Event-driven system with:
Multiple deployment methods:
**Use Case**: Embed a Spline scene in a React application
**Implementation**:
# Installation npm install @splinetool/react-spline @splinetool/runtime
import Spline from '@splinetool/react-spline';
export default function Hero() {
return (
<div style={{ width: '100%', height: '600px' }}>
<Spline scene="https://prod.spline.design/YOUR-SCENE-ID/scene.splinecode" />
</div>
);
}**Key Points**:
**Use Case**: Respond to user clicks on specific objects
**Implementation**:
import Spline from '@splinetool/react-spline';
export default function InteractiveScene() {
function onSplineMouseDown(e) {
// Check if clicked object is the button
if (e.target.name === 'Button') {
console.log('Button clicked!');
// Get object properties
console.log('Position:', e.target.position);
console.log('Rotation:', e.target.rotation);
console.log('Scale:', e.target.scale);
}
}
function onSplineMouseHover(e) {
if (e.target.name === 'Button') {
console.log('Hovering over button');
}
}
return (
<Spline
scene="https://prod.spline.design/YOUR-SCENE-ID/scene.splinecode"
onSplineMouseDown={onSplineMouseDown}
onSplineMouseHover={onSplineMouseHover}
/>
);
}**Available Event Handlers**:
**Use Case**: Modify object properties from React code
**Implementation**:
import { useRef } from 'react';
import Spline from '@splinetool/react-spline';
export default function ProductViewer() {
const cube = useRef();
const splineApp = useRef();
function onLoad(spline) {
// Save Spline instance
splineApp.current = spline;
// Find object by name
const obj = spline.findObjectByName('Product');
// Or by ID
// const obj = spline.findObjectById('8E8C2DDD-18B6-4C54-861D-7ED2519DE20E');
cube.current = obj;
}
function rotateProduct() {
if (cube.current) {
// Rotate 45 degrees around Y axis
cube.current.rotation.y += Math.PI / 4;
}
}
function changeColor() {
if (cube.current) {
// Change material color (hex color)
cube.current.material.color.Professional design agency skillstack for 3D/WebGL, animation, and modern web development Claude Code plugin marketplace providing comprehensive coverage of modern web technologies including Three.js, GSAP, React Three Fiber, Framer Motion, Babylon.js, and
Declarative web framework for building browser-based 3D, VR, and AR experiences using HTML and entity-component architecture. Use…
Pre-built animated React component collections combining Magic UI (150+ TypeScript/Tailwind/Motion components) and React Bits…
Versatile JavaScript animation engine for DOM, CSS, SVG, and JavaScript objects. Use when creating timeline-based animations,…
Comprehensive skill for Babylon.js 3D web rendering engine. Use this skill when building real-time 3D experiences, browser-based…
Page transitions library for creating fluid, smooth transitions between website pages. Use this skill when implementing page…
Blender to web export workflows for 3D models and animations. Use this skill when exporting Blender models to glTF for web,…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.