0.0.19 • Published 12 months ago

react-simple-headless-carousel v0.0.19

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

React Simple Headless Carousel

example workflow

Component features

  • 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

Documentation

Simple react carousel docs

How to use:

If you are using Tailwind:

tailwind.config.ts

export default {
  content: [
    "./src/**/*.{js,ts,jsx,tsx}",
    "./node_modules/react-simple-headless-carousel/**/*.js",
  ],
} satisfies Config;

...other way?

import 'react-simple-headless-carousel/styles.min.css';

Components markup:

import {
  Carousel,
  CarouselProvider,
  Counter,
  DotsGroup,
  NextButton,
  PrevButton,
  Slide,
} from 'react-simple-headless-carousel';

<CarouselProvider total={2}>
  <Carousel>
    <Slide>
      <img src="..." />
    </Slide>
    <Slide>
      <img src="..." />
    </Slide>
  </Carousel>

  <DotsGroup />
  <NextButton>Next<NextButton />
  <PrevButton>Prev</PrevButton>
</CarouselProvider>

Props documentation:

<CarouselProvider />

Component is used to initialize the carousel context with configuration options and wrap the other components.

PropTypeDefaultRequired
childrenReactNodeYes
totalnumber0Yes
autoPlayDelaynumberfalseNo
slidesVisiblenumber1No
stepnumber1No
thresholdnumber0.25No
infinitebooleanfalseNo
disableTouchbooleanfalseNo
lazybooleantrueNo
autoPlaybooleanfalseNo

<Carousel />

A carousel that wraps the slides and provides the core functionality, such as scrolling to the next or previous slide.

PropTypeDefaultRequired
childrenReactNodeYes
wrapperClassNamestringNo
carouselClassNamestringNo

<Slide />

A single slide in a carousel.

PropTypeDefaultRequired
childrenReactNodeYes
indexnumberYes
classNamestringNo

<Dot />

A single dot.

PropTypeDefaultRequired
classNamestringNo
colorActivestringNo
colorInactivestringNo
indexnumberYes
disabledbooleanNo
onClickFunctionNo

<DotsGroup />

A component that renders a group of dots, representing the slides in the carousel. It provides auto generated dots for the carousel.

PropTypeDefaultRequired
classNamestringNo
dotClassNamestringNo
colorActivestringNo
colorInactivestringNo
onClickFunctionNo

<NextButton />

PropTypeDefaultRequired
classNamestringNo
childrenReactNodeYes
onClickFunctionNo

<PrevButton />

PropTypeDefaultRequired
classNamestringNo
childrenReactNodeYes
onClickFunctionNo

<Counter />

PropTypeDefaultRequired
classNamestringNo

TODO:

  • Add beta implementation
  • Add stable version
  • Setup CI
  • DX improvments prettier/eslint
  • Add docs
  • Context initial props refactoring
  • Add unit tests
  • Add examples
  • Publish on NPM
  • Add counter element
0.0.19

12 months ago

0.0.18

1 year ago

0.0.17

1 year ago

0.0.16

1 year ago

0.0.15

1 year ago

0.0.14

1 year ago

0.0.13

1 year ago

0.0.12

1 year ago

0.0.11

1 year ago

0.0.10

1 year ago

0.0.9

1 year ago

0.0.8

1 year ago

0.0.7

1 year ago

0.0.6

1 year ago

0.0.5

1 year ago

0.0.4

1 year ago

0.0.3

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago

0.0.0

1 year ago