Create and embed Sirv 360 spins - interactive rotating product views. Use when creating a 360 spin, shooting or preparing spin frames, naming spin image sequences, configuring .spin files, embedding spins with Sirv, tuning spin options (autospin, zoom, hint, speed), building 3D multi-row spins, adding spin hotspots, converting video to spin or spin to video, or debugging a spin that won't rotate or generates wrongly. Triggers on 360 spin, product spin, 360 product photography, spin viewer, or rotating product view.
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
A 360 spin is a sequence of frames (product rotated in steps) that Sirv assembles into an interactive drag-to-rotate viewer. Spins are Sirv's flagship media type: lighter and more engaging than video for rotating products.
Check current Sirv docs before changing naming rules, option names, or defaults:
https://sirv.com/help/articles/how-spin-files-are-created/https://sirv.com/help/articles/sirv-spin/https://sirv.com/help/articles/images-for-a-360-spin/https://sirv.com/help/articles/hotspots-on-360-spin/https://sirv.com/help/articles/convert-video-to-spin/video2spin)..spin: one folder per product spin, filenames with ascending numbers..spin file is created automatically; verify frame order and start frame.class="Sirv" markup; configure behavior via data-options or the .spin file.chair-01.jpg ... chair-36.jpg.chair-r01-c01.jpg, chair-r01-c02.jpg, ... chair-r03-c36.jpg. The r/c (and s for spin number) prefixes are best practice for clarity..spin filename comes from the folder name (one spin per folder) or the common filename stem (digits stripped).Source frames: shoot/render at 2500-4000px wide. Sirv resizes and compresses delivery automatically (aggressive ~60% quality for retina), so keep masters high quality.
<link rel="preconnect" href="https://youraccount.sirv.com" crossorigin>
<link rel="dns-prefetch" href="https://scripts.sirv.com">
<script src="https://scripts.sirv.com/sirvjs/v3/sirv.js"></script>
<div class="Sirv" data-src="https://youraccount.sirv.com/products/chair/chair.spin"></div>Inside a product gallery, add the .spin as one data-src item among images/videos - see ../sirv-media-viewer/SKILL.md for gallery composition, thumbnails, and fullscreen.
Set via data-options, the .spin file (JSON - also holds image list and hotspots), profiles, or SirvOptions:
| Option | Default | Purpose |
|---|---|---|
spin | drag | Interaction: drag or hover |
speed | 50 | Drag sensitivity (0-100) |
autospin | - | once, twice, infinite, or off |
autospinSpeed | 3600 | ms per full rotation |
autospinDirection | - | clockwise, anticlockwise, alternate |
autospinStart | - | load, hover, click (combinable) |
hint / hintText / mobileHintText | true / "Drag to spin" / "Swipe to spin" | Interaction hint |
zoom | 2.5 | Click-to-zoom magnification (0 disables; activates when source exceeds display by 20%) |
fullscreen | true | Fullscreen button |
startColumn / startRow | - | Initial frame |
loopColumn / loopRow | true / false | Wrap past the last frame on each axis |
spinOnAnyDrag | false | Single-row spins: also react to vertical drags |
Mobile: keep spinOnAnyDrag:false (via data-mobile-options="spinOnAnyDrag:false;") so vertical swipes still scroll the page.
POST /v2/files/video2spin. Choose duration, JPEG (faster) or PNG (sharper), and frame count from 18/24/36/72/120/180/360. Video max 512MB; compress to under 300MB first when near the limit. Hourly API limits by plan (Free 0, Business 200, Enterprise 400).POST /v2/files/spin2video renders an MP4 for marketplaces/social that accept video but not embeds.../sirv-api/SKILL.md..spin + Sirv JS does it in two lines..spin never generates.2024-chair-01.jpg) - Sirv reads the first digits as the row. Keep dates out of frame filenames..spin JSON without checking current docs for valid settings/hotspot syntax..spin URL loads in a browser and rotation follows drag direction in the right order (no jumps or reversals).IgorVaryvoda/image-optimization-skill
6000fda
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.