🚨 Shai-Hulud Strikes Again:834 Packages Compromised.Technical Analysis
Socket
Book a DemoInstallSign in
Socket

react-round-carousel

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-round-carousel

An infinitely scrollable 3D carousel component for React

latest
Source
npmnpm
Version
1.5.0
Version published
Maintainers
1
Created
Source

Github Build Codacy Badge Codebeat Badge CodeFactor Badge DeepScan grade Analytics

An infinitely scrollable 3D carousel component for React

Demo

This is an infinitely scrollable, touch enabled, 3D, image carousel component which can be used in a React application.

Visitor stats

GitHub stars GitHub forks GitHub watchers GitHub followers

Code stats

GitHub code size in bytes GitHub repo size GitHub language count GitHub top language GitHub last commit

Install

First install the component using your preferred package manager:

npm i react-round-carousel

# or

yarn add react-round-carousel

Usage

Then import the component in your application. Here is an example:

The slides (or items) should have the following shape:

PropTypeRequiredDescriptionExample
altstringfalseAlternative text for the slide image'This is an example alt text'
imagestringtruePath or URL to an image'https://source.unsplash.com/random/210x210'
contentReactNodetrueA ReactNode representing the content of the slide<div><strong>Slide Title</strong></div>
import * as React from 'react';
import { createRoot } from 'react-dom/client';

import { Carousel, CarouselRef, CarouselItem } from 'react-round-carousel';

// Create an array of Carousel Items
const items: CarouselItem[] = Array(20)
	.fill('')
	.map((_: string, index: number) => ({
		alt: 'A random photo',
		image: `https://picsum.photos/${210 + index}`,
		content: (
			<div>
				<strong>Round Carousel</strong>
				<span>Slide number {index + 1}</span>
			</div>
		)
	}));

const App = () => {
	const carouselRef = React.createRef<CarouselRef>();

	return <Carousel ref={carouselRef} items={items} slideOnClick />;
};

createRoot(document.getElementById('root')!).render(<App />);

Options

The component accepts the following configuration options as props:

PropTypeRequiredDescriptionDefault
classNamePrefixstringfalseCSS classname prefix for the Carousel component'carousel'
itemsCarouselItemtrueAn array of CarouselItems[]
itemWidthnumberfalseWidth of each of the carousel items210
nextButtonContentstring/ReactNodefalseContent of the next button'Next'
prevButtonContentstring/ReactNodefalseContent of the previous button'Previous'
showControlsbooleanfalseShow/hide navigation controlstrue
slideOnClickbooleanfalseSlide to the clicked slidefalse

Controlling from outside

It is possible to control the component from outside - for example from a parent component. In order to do so, a React Ref should be used. The current reference contains several methods, including:

  • next - Slides the carousel to the next slide.
  • prev - Slides the carousel to the previous slide.
  • getItems - Returns an array with all items passed to the carousel.
  • getSelectedIndex - Returns the active slide index of the carousel.
  • setSelectedIndex - Sets the active slide index of the carousel and slides to this slide.

The demo shows how to use these methods.

Style

In order to achieve the layout shown in the demo, you should add styles to your markup.

There is an already existing stylesheet which can be found in the src folder and can be imported:

  • in your JS entrypoint
import 'react-round-carousel/src/index.css';
  • in your CSS entrypoint
@import 'react-round-carousel/src/index.css';

If you don't want to use the default stylesheet, you can create and use your own.

LICENSE

MIT

Connect with me:

Support and sponsor my work:

Keywords

3D

FAQs

Package last updated on 14 Aug 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts