01 At full width
Same component, same content file. On a wide screen the panel docks to the right instead of rising from the bottom.
02 How it goes on your page
Two lines. No framework, no build step, nothing to install.
<script src="hotspot-explorer.js" defer></script>
<hotspot-explorer src="content.json"></hotspot-explorer>
What you'd send me
- One product photo, shot square-on, framed tight.
- The parts you want marked — four to eight.
- The reasoning you've already written for each one.
I put it in a content.json and it's live. Changing the copy later doesn't touch the code.
Zero dependenciesOne script, one custom element, one JSON file. Nothing to build, nothing to update.
Mobile firstDesigned at 390px. Every touch target is 44px. The photo is never cropped.
Keyboard and screen readerTab through the markers, Escape closes, arrows step. Panels are announced.