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

react-card-flip

Package Overview
Dependencies
Maintainers
1
Versions
44
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

react-card-flip

ReactCardFlip

  • 0.0.7
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
21K
increased by1.9%
Maintainers
1
Weekly downloads
 
Created
Source

ReactCardFlip

React Card Flip is allows you to use the card flipping animation. Credit for the CSS goes to David Walsh.

Demo & Examples

Live demo: Demo

To build the examples locally, run:

npm install
npm start

Then open localhost:8000 in a browser.

Installation

The easiest way to use react-card-flip is to install it from NPM with the command:

npm install react-card-flip --save

You can also use the standalone build by including dist/react-card-flip.js in your page. If you use this, make sure you have already included React, and it is available as a global variable.

Usage

To use this component, first import ReactCardFlip:

import ReactCardFlip from 'react-card-flip';

and then provide it with two child components with keys marked front and back so that the component can tell which component should be in the front and which component should be in the back.

This component only allows for manual card flip so make sure to include a tag that has an onClick handler for each side of the card.

The animation itself will be controlled by the prop isFlipped. Use this to control whether to show the front or the back of the card.

class App extends React.Component {
  component() {
    this.state = {
      isFlipped: false
    };
    this.handleClick = this.handleClick.bind(this);
  }

  handleClick(e) {
    e.preventDefault();
    this.setState({ isFlipped: !this.state.isFlipped });
  }

  render() {
    return (
      <ReactCardFlip isFlipped={this.state.isFlipped}>
        <YOUR_FRONT_CCOMPONENT key="front">
          This is the front of the card.
          <button onClick={this.handleClick}>Click to flip</button>
        </FrontComponent>

        <YOUR_BACK_COMPONENT key="back">
          This is the back of the card.
          <button onClick={this.handleClick}>Click to flip</button>
        </BackComponent>
      </ReactCardFlip>
    )
  }
}

YOUR_FRONT_CCOMPONENT and YOUR_BACK_COMPONENT here are meant to be the two components that you plan to use for the card, one for the front of the card and one for the back of the card.

The most important part is providing the key props with the values front and back to your two components so that ReactCardFlip can differentiate between the two components. key="front" tells ReactCardFlip to use that component as the front of the card. Similarly, key="back" tells ReactCardFlip to use that component as the back of the card.

Properties

PropsTypeDescriptionDefault
isFlippedboolFalse to show the front of the card, true to show the backundefined
flipSpeedBackToFrontnumberThe speed of the flip animation when the card flips from back to front, the higher the number the slower the flip animation0.6
flipSpeedFrontToBacknumberThe speed of the flip animation when the card flips from front to back, the higher the number the slower the flip animation0.6

Development (src, lib and the build process)

NOTE: The source code for the component is in src. A transpiled CommonJS version (generated with Babel) is available in lib for use with node.js, browserify and webpack. A UMD bundle is also built to dist, which can be included without the need for any build system.

To build, watch and serve the examples (which will also watch the component source), run npm start. If you just want to watch changes to src and rebuild lib, run npm run watch (this is useful if you are working with npm link).

Contributing

Fork this repo, add your proposed features and make a pull request. I will review as soon as possible.

License

This project is licensed under the terms of the MIT license. Check LICENSE.txt for more information.

Keywords

FAQs

Package last updated on 28 May 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