Blossom Carousel Logo
Getting Started

Introduction

Blossom Carousel is draggable and scrollable and maintains all native browser behavior.

Blossom Carousel is the first carousel library that builds on native browser scrolling instead of replacing it. It provides a small drag enhancement for pointer devices while maintaining the core interaction model, performance, and accessibility of a real scroll container.

Carousels have become a powerful and popular choice among the many ways to structure content hierarchy. They are one of the main means to create a spatial form of progressive disclosure by collapsing vertical real estate while inviting horizontal exploration. Their scrolling behavior makes them stand out especially on touch devices where swiping is such a natural gesture.

Web standards have evolved to a point where these swipable carousels feel incredibly native. However, horizontal scrolling on desktop lacks the intuitive drag interaction that makes touch-based carousels feel so natural. Blossom Carousel fills that gap with a custom, lightweight physics-based drag engine that works seamlessly on top of native scrolling.

Blossom's dragging engine syncs with your CSS configuration automatically.

Native scrolling

Full browser performance, platform scrolling behavior, and accessibility from a real horizontal scroll container.

Dragging

Custom physics-based dragging for pointer input, layered on top of native scrolling instead of replacing it.

No abstraction

Use native web APIs directly. Blossom keeps your carousel as real markup, real CSS, and real scroll state.

Configure with CSS

0 KB on touch devices

Blossom only loads the drag enhancement when a fine pointer device is detected, so touch devices keep native scrolling untouched.

Works with major frameworks

Components are available for React, Vue, Svelte, and Web Components, with a framework-agnostic core package underneath.

Next steps