- Extremely small package size (gzipped):
- Javascript: 2.6kB
- CSS: 1.5kB
- 0 external dependencies
- Full typescript support
- Built in with Tailwind, but you can always customize the styles
- Handling touch/mouse events
- Lazy image loading
- Responsive support
globals.css
@source "../node_modules/react-micro-carousel/dist";tailwind.config.ts
export default {
content: [
"./src/**/*.{js,ts,jsx,tsx}",
"./node_modules/react-micro-carousel/**/*.js",
],
} satisfies Config;import 'react-micro-carousel/styles.min.css';import {
Carousel,
CarouselProvider,
Counter,
DotsGroup,
NextButton,
PrevButton,
Slide,
} from 'react-micro-carousel';
<CarouselProvider slideHeight={200} total={2}>
<Carousel>
<Slide index={0}>
<img src="..." />
</Slide>
<Slide index={1}>
<img src="..." />
</Slide>
</Carousel>
<DotsGroup />
<NextButton>Next</NextButton>
<PrevButton>Prev</PrevButton>
</CarouselProvider>;Component is used to initialize the carousel context with configuration options and wrap the other components.
| Prop | Type | Default | Required |
|---|---|---|---|
| children | ReactNode | Yes | |
| slideHeight | number | 0 | Yes |
| total | number | 0 | Yes |
| autoPlayDelay | number | false | No |
| slidesVisible | number | 1 | No |
| step | number | 1 | No |
| threshold | number | 0.25 | No |
| infinite | boolean | false | No |
| disableTouch | boolean | false | No |
| lazy | boolean | true | No |
| autoPlay | boolean | false | No |
A carousel that wraps the slides and provides the core functionality, such as scrolling to the next or previous slide.
| Prop | Type | Default | Required |
|---|---|---|---|
| children | ReactNode | Yes | |
| wrapperClassName | string | No | |
| carouselClassName | string | No |
A single slide in a carousel.
| Prop | Type | Default | Required |
|---|---|---|---|
| children | ReactNode | Yes | |
| index | number | Yes | |
| className | string | No |
A single dot.
| Prop | Type | Default | Required |
|---|---|---|---|
| className | string | No | |
| colorActive | string | No | |
| colorInactive | string | No | |
| index | number | Yes | |
| disabled | boolean | No | |
| onClick | Function | No |
A component that renders a group of dots, representing the slides in the carousel. It provides auto generated dots for the carousel.
| Prop | Type | Default | Required |
|---|---|---|---|
| className | string | No | |
| dotClassName | string | No | |
| colorActive | string | No | |
| colorInactive | string | No | |
| onClick | Function | No |
| Prop | Type | Default | Required |
|---|---|---|---|
| className | string | No | |
| children | ReactNode | Yes | |
| onClick | Function | No |
| Prop | Type | Default | Required |
|---|---|---|---|
| className | string | No | |
| children | ReactNode | Yes | |
| onClick | Function | No |
| Prop | Type | Default | Required |
|---|---|---|---|
| className | string | No |