Sirv Media Viewer guidance. Use when building, auditing, or debugging Sirv product galleries, zoom viewers, 360 spins, videos, YouTube/Vimeo embeds, 3D models, PDF galleries, smart .view galleries, thumbnails, fullscreen/mobile behavior, SMV class="Sirv" markup, data-src/data-options/data-breakpoints, Sirv JS loading, viewer API/events, CSP, accessibility, or Core Web Vitals for Sirv interactive media.
73
92%
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
Sirv Media Viewer (SMV) is the right path when the user needs interactive product media rather than just a transformed image URL. It handles galleries, thumbnails, zoom, spins, video, 3D models, smart galleries, fullscreen, lazy loading, and responsive behavior.
Check current Sirv docs before changing option names, module names, event/API calls, or CSP rules:
https://docs.sirv.com/sirv-media-viewerhttps://docs.sirv.com/sirv-media-viewer/core-features/responsive-imageshttps://docs.sirv.com/sirv-media-viewer/core-features/smart-galleryhttps://docs.sirv.com/sirv-media-viewer/core-features/accessibilityhttps://docs.sirv.com/sirv-media-viewer/advanced-implementation/apihttps://docs.sirv.com/sirv-media-viewer/advanced-implementation/eventshttps://docs.sirv.com/sirv-media-viewer/advanced-implementation/content-security-policy-for-sirvRead implementation.md when writing or reviewing viewer markup, script loading, options, breakpoints, smart galleries, API/events, or CSP.
For creating the spin assets themselves (frame naming, .spin generation, spin options, video-to-spin), use ../sirv-360-spin/SKILL.md; for video encoding/streaming strategy outside the viewer, ../video-optimization/SKILL.md.
.spin, video, YouTube/Vimeo, .glb/.gltf, PDF gallery, or .view smart gallery..view gallery, grid, or slider.class="Sirv" container with child div data-src assets, or a single div class="Sirv" data-src="...">.data-options, SirvOptions.viewer, or data-breakpoints; put image transforms in Sirv Dynamic Imaging URLs/profiles.autostart:created, preconnect to Sirv domains, and reserve stable layout space.data-alt or Sirv file descriptions. Keep ARIA labels intentional when customizing a11y prompts.<link rel="preconnect" href="https://scripts.sirv.com" crossorigin>
<link rel="preconnect" href="https://account.sirv.com" crossorigin>
<script src="https://scripts.sirv.com/sirvjs/v3/sirv.js"></script>
<div class="Sirv" data-options="autostart:created; layout.aspectRatio:1/1; thumbnails.position:bottom">
<div data-src="https://account.sirv.com/products/sku-123-front.jpg" data-type="zoom" data-alt="SKU 123 front view"></div>
<div data-src="https://account.sirv.com/products/sku-123-side.jpg" data-type="zoom" data-alt="SKU 123 side view"></div>
<div data-src="https://account.sirv.com/products/sku-123.spin" data-alt="SKU 123 360 spin"></div>
<div data-src="https://account.sirv.com/products/sku-123-demo.mp4" data-options="autoplay:false" data-alt="SKU 123 demo video"></div>
</div><script src="https://scripts.sirv.com/sirvjs/v3/sirv.js"></script>
<div
class="Sirv"
data-src="https://account.sirv.com/products/sku-123.view"
data-options="itemsOrder:spin, zoom, video, model, image; fullscreen.enable:true"
></div><div
class="Sirv"
data-src="https://account.sirv.com/products/sku-123.spin, https://account.sirv.com/products/sku-123-front.jpg, https://account.sirv.com/products/sku-123-demo.mp4"
data-options="layout.type:slider; thumbnails.type:square"
></div>data-options on the viewer controls all items unless item-level options override it.data-options should be used for one asset's zoom mode, video autoplay, spin hints, or model options.SirvOptions.viewer is useful for page/site defaults.data-breakpoints is for per-viewer responsive behavior and has higher priority than normal options.SirvMobileOptions or SMV breakpoints for mobile-specific quality/layout only when the behavior should diverge.class="Sirv"/data-src markup without the Sirv JS script.data-alt and relying on unlabeled media unless Sirv file descriptions are verified.scripts.sirv.com, the account/custom Sirv domain, video.sirv.com, stats.sirv.com, blob:, data:, and the inline/eval requirements documented by Sirv.data-src URL returns 200 and is the intended media type.data-alt or Sirv file descriptions produce useful alt/ARIA output.Sirv.getInstance(...), Sirv.viewer.getInstance(...), Sirv.on(...), or DOM sirv:* events.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.