EM

Embla Carousel

embla-carousel

A lightweight carousel library with fluid motion and great swipe precision

Utilities
slider
carousel
slideshow
gallery
lightweight
touch
javascript
typescript
react
vue
Stars
8.5k
Weekly
19M
Open issues
26
Bundle
~15 kB

Installation

npm install embla-carousel

Code example

import { useEmblaCarousel } from "embla-carousel";

export function Example() {
  const value = useEmblaCarousel();
  return <p>{String(value)}</p>;
}

Pros & cons

Pros

  • Actively maintained by David Jerleke
  • 19M weekly downloads. Battle tested
  • First-class TypeScript definitions
  • MIT licensed

Considerations

  • Adds roughly ~15 kB to your bundle
  • Needs client-only rendering in SSR frameworks
  • Not supported in React Native
  • 26 open issues on GitHub

FAQs

Alternatives & similar libraries