Free Webinar β Building for Scale with Pion & Webflow
0.1.0
Scroll Story
Scroll-linked storytelling with IntersectionObserver.
Scroll-linked storytelling with IntersectionObserver.
Features
- β Zero dependencies - Pure React implementation
- β Full accessibility - ARIA labels, keyboard navigation, screen reader support
- β Theme support - Light, dark, and auto modes
- β Reduced motion support - Respects user preferences
Props
sections(required)
- Type:
StorySection[] | string - Story sections (array or JSON string)
showProgress
- Type:
boolean- Default:true - Show progress bar
progressPosition
- Type:
'top' | 'bottom' | 'left' | 'right'- Default:'top' - Progress bar position
theme
- Type:
'light' | 'dark' | 'auto'- Default:'auto' - Theme mode
radius
- Type:
number- Default:8 - Border radius in pixels
density
- Type:
'comfortable' | 'compact'- Default:'comfortable' - Layout density
animate
- Type:
boolean- Default:true - Enable animations
className
- Type:
string - Additional CSS class
a11yLabel
- Type:
string - Accessibility label
Customization
CSS Variables
Override these variables in your Webflow custom code or CSS:
--cc-radius: 8px; /* Border radius */Webflow Classes
Target these classes in Webflow Designer for custom styles:
.cc-scroll-story.cc-scroll-story__content.cc-scroll-story__indicator.cc-scroll-story__number.cc-scroll-story__progress.cc-scroll-story__progress-bar.cc-scroll-story__section.cc-scroll-story__sections.cc-scroll-story__title