Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

reactjs-coverflow-scale

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

reactjs-coverflow-scale

A coverflow module for React

  • 1.1.3
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

React Coverflow

npm version

NPM


(Inspired from https://github.com/andyyou/react-coverflow)

React Coverflow is a React component for building cover flow style carousel in a convenient way.

Features of reactjs-coverflow

  • Flexbox styles of CSS 3.
  • Support scroll in the component.
  • Support navigation buttons optional
  • Using css-module
  • Support mobile
  • Support different div's size

Getting started

Install reactjs-coverflow using npm.

$ npm install reactjs-coverflow

The required stylesheet using css-module and include in package(js file), so you don't need include other stylesheet.

Usage

Exemple :

var React = require('react');
var Coverflow = require('reactjs-coverflow');

module.exports = React.createClass({
	render: function() {
		return (
			<div>
				<form>
					<Coverflow ref="coverflow"
					style={{width: "100vw", height:"500px"}}
					margin={(this.state && this.state.margin + "px") || undefined}
					startPosition={4}
					enableScroll={true}
					animationSpeed={0.8}>
					    <div style={{width: '150px', height: '150px', backgroundColor: 'pink'}} />
					    <div style={{width: '150px', height: '150px', backgroundColor: 'yellow'}} />
					    <div style={{width: '150px', height: '150px', backgroundColor: 'green'}} />
					    <div style={{width: '150px', height: '150px', backgroundColor: 'orange'}} />
					    <div style={{width: '150px', height: '150px', backgroundColor: 'blue'}} />
					    <div style={{width: '150px', height: '150px', backgroundColor: 'purple'}} />
					    <div style={{width: '100px', height: '150px', backgroundColor: '#000000'}} />
					    <div style={{width: '200px', height: '150px', backgroundColor: 'pink'}} />
					</Coverflow>

					<input type="text" name="margin" onChange={this.handleMarginChange} />
					<button onClick={this.prev} type="button">Prev</button>
					<button onClick={this.next} type="button">Next</button>
					<button onClick={this.getPosition} type="button">GetPosition</button>
					<button onClick={this.goAt} type="button">Go At 5</button>
				</form>
			</div>
		);
	},
	handleMarginChange: function(e) {
		e.preventDefault();
		this.setState({margin: parseFloat(e.currentTarget.value)});
	},
	prev: function(e) {
		e.preventDefault();
		this.refs.coverflow.previous();
	},
	next: function(e) {
		e.preventDefault();
		this.refs.coverflow.next();
	},
	getPosition: function(e) {
		e.preventDefault();
		console.log(this.refs.coverflow.getPosition());
	},
	goAt: function(num, e) {
		e.preventDefault();
		this.refs.coverflow.goAt(4);
	}
});
Options
  • startPosition [number]: Start at 0, determine the starting element of your coverflow (default: 0)
  • enableScroll [boolean]: Enable scrolling feature. ((default: true)
  • margin [string or number (px)]: margin between elements in coverflow (default: USE CSS) !! Don't use margin proprety if you prefer to use media queries, overwrite the CSS and the class .reactjs-coverflow_Element!!
  • animationSpeed[string or number (second)]: Speed of animation coverflow in second (default: USE CSS) !! Same that margin !!
Refs

You can get some function of your coverflow with a ref proprety

  • next(): go to next slide
  • previous(): go to previous slide
  • goAt(number): go to {number slide} (Begin at 0 !)
  • getPosition(): get position of current slide (Begin at 0)

You can use it to create some button

CSS
.reactjs-coverflow_Main {
	position: relative;
	margin: 0;
    	padding: 0;
    	background-color: rgba(0, 0, 0, 0.1);
    	overflow: hidden;
}

.reactjs-coverflow_Coverflow {
	width: 100%;
	height: 100%;
	display: flex;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 500px;
	perspective: 500px;
}

.reactjs-coverflow_Element {
	position: relative;
	-webkit-box-reflect: below 1px -webkit-linear-gradient(bottom,rgba(0,0,0,.6),rgba(0,0,0,.1) 20%,transparent 30%,transparent);
	margin: auto 20px;
	transition: transform 0.7s;
}

You can easely overwrite style propreties.

Major Update

  • Since 1.0.0 : react-coverflow-X is replace to reactjs-coverflow in the style.

Minor Update

  • Since 1.1.0 : Lodash dependencies has been removed.

Contributors

Use Github issues for requests

reactjs-coverflow is a community project and wouldn't be what it is without contributions! We encourage and support contributions. The reactjs-coverflow source code is released under the MIT License.

Feel free to fork and improve/enhance reactjs-coverflow any way you want. If you feel that reactjs-coverflow will benefit from your changes, please open a pull request.

Development

If you want to custom the component there are some commands that can help you.

$npm install --dev
# Build component to lib/
$ npm run build

# Build source of site
$ npm run build-test

# Run test-server (default port: 3001)
$ npm run dev

# You can run all this command with the following command:
$ npm run dev

PS: In development, gulp is installed and watch the code. It automatically rebuild when you use npm run dev.

Keywords

FAQs

Package last updated on 13 Jul 2017

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc