Guide · Agent skill
How to use the Horizontal Scroll Scenes agent skill
Updated · written with AI from the project's own documentation and checked against our catalogue data
Horizontal Scroll Scenes is an agent skill that teaches an AI coding agent to build a page where scrolling down moves the view sideways through a series of chapters, like a horizontal story or product tour. After following this guide you will know how to install the skill, how to ask an agent for a scroll-driven scene page, and what to check in the result. It is aimed at front-end developers and designers who have not used agent skills before.
Quick start
- 1Download the ZIP. Get the horizontal-scroll-scenes ZIP from this page.
- 2Unzip into a skills folder. Unzip it into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder for one project.
- 3Or upload it in the Claude apps. In the Claude apps, go to Settings → Capabilities → Skills and upload the skill.
- 4Describe the scene page. Ask for the result in plain terms, naming the skill, such as five scenes that advance left to right as the user scrolls down.
- 5Review the demo. Open demo.html to see the reference build and compare it with the agent's output.
- 6Test the scroll behaviour. Check forward and reverse scrolling, scrollbar drags, jumps and a reload at depth.
What the skill makes the agent build
The skill builds scene-by-scene chapters that advance left to right on one fixed stage while the user scrolls vertically. Native scroll is the only input, so there is no wheel hijacking and no scroll snapping.
Scroll position is the only state. One pure function turns scroll progress into a scene number, a resting dwell value and a move value on every frame, and everything on screen is drawn from those values. Because nothing is stored, scrolling back, dragging the scrollbar, jumping to a section or reloading the page all show the correct scene.
- Each scene gets a resting pause where only its own content animates.
- Transitions between scenes can be a burn-wipe or a pan.
- A chapter index and progress UI follow the current scene.
- Glide-to-scene links can skip intermediate scenes.
- Keyboard and reduced-motion behaviour are covered.
Install the skill from the ZIP
Download the ZIP for horizontal-scroll-scenes from this page and unzip it. The folder contains agents/openai.yaml, demo.html, PROMPT.md and SKILL.md.
For a personal install, unzip the skill into ~/.claude/skills/. To scope it to one project, unzip it into that project's .claude/skills/ folder instead.
In the Claude apps you can instead upload the skill under Settings → Capabilities → Skills.
Trigger the skill with a natural request
You do not need special syntax beyond naming the skill. The bundled PROMPT.md uses the form of mentioning the skill by name with a $ prefix, followed by a plain description of the result you want.
The skill's description lists the situations it fits: horizontal scrollytelling, multi-scene product tours, scroll down to travel sideways, chapter carousels driven by the wheel, and any wheel-jacked slider that breaks on touch, keys, refresh or back.
- Use $horizontal-scroll-scenes to turn this page into five scenes on one fixed stage that advance left to right as I scroll down.
- Use $horizontal-scroll-scenes to build a product tour with a chapter index, a burn-wipe between scenes and correct reverse and reload behaviour.
- Use $horizontal-scroll-scenes to make my chapter carousel work on touch and keyboard, and respect reduced motion.
Check the result: pacing, reverse, skip and reload
The skill sets the pace with a few constants: a dwell of 1.15 screens per scene, a move of 0.85 screens between scenes, and a page height derived from the number of scenes. The page height is calculated from the scene count, not a fixed pixel value, so it adapts to the screen.
Scroll progress is normalised by the scrollable distance, not a hard-coded pixel height. This matters on phones, where the collapsing address bar changes the viewport height during scrolling.
- Scroll forward, then back, and confirm each scene looks the same both times.
- Drag the scrollbar and jump to the end and back to the start.
- Reload the page partway down and confirm the correct scene appears.
- Test with a keyboard and with touch input.
sp = scrollY / (scrollHeight - innerHeight)Keep the motion accessible
Hidden chapters are set to visibility hidden and inert, so their links cannot be focused or read by screen readers. Index rows are real links with aria-current on the active row.
A polite live region announces a scene change only when a glide lands on a scene, not on every boundary crossed along the way. Ask the agent to honour reduced-motion settings as part of the request.
What people use it for
- A product tour where each scene shows one feature of a product.
- A brand story told as a sequence of chapters with a chapter index.
- A portfolio where each project is a scene on one stage.
- A wheel-driven chapter carousel that must work on touch and keyboard.
- A replacement for a fragile scroll-jacking slider that breaks on refresh or back navigation.
Frequently asked questions
Is the horizontal scroll scenes skill free?
The skill is published under the MIT licence. The listing does not mention any price, so check the licence text in the ZIP for the terms.
What do I need to use this skill?
The listing states that it requires nothing extra. It does not run scripts and does not use the network. You need an agent environment that supports skills, such as the Claude apps or Claude Code with a skills folder.
Where do I install the horizontal scroll scenes skill?
Unzip the ZIP into ~/.claude/skills/ for personal use, or into a project's .claude/skills/ folder for one project. In the Claude apps, you can upload it under Settings → Capabilities → Skills.
Does this skill use scroll snapping or hijack the mouse wheel?
No. The design uses native scrolling as the only input. It avoids wheel hijacking and scroll-snap, which keeps touch, trackpad momentum, keyboard paging and find-in-page working.
Will the scenes break if the user reloads the page or uses the back button?
The design derives the current scene from the scroll position on every frame and does not store it. That is why reloading at any depth, dragging the scrollbar and jumping to a section all show the correct scene.
When should I choose a different approach?
For a simple vertical page or a standard carousel, this added complexity is unnecessary. Sites that must work without JavaScript, or that need plain accessible content flow, should avoid it because it depends on scripted scroll mapping and motion effects.
New agent skills, repos and AI tools — every week
The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.
Our verdict
Use this skill if you are building scrollytelling, a multi-scene product tour or a chapter-based scroll experience and need it to hold up on touch, keyboard, refresh and back navigation. Pick something simpler if you only need a vertical page or a standard carousel, or if the site must work without JavaScript.
Download the skill