npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

react-confetti-boom

v1.0.0

Published

A customizable React confetti explosion component for celebrations and special events

Downloads

2,795

Readme

React Confetti Boom 🎉

NPM NPM Downloads License Size

React Confetti Boom 🎉 is a lightweight and customizable confetti animation component for React applications. Enhance user experience by adding a fun and engaging confetti effect to your app with just a few lines of code.

| boom mode | fall mode | |------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------| | boom | fall |

Table of Contents

Installation

To install React Confetti Boom, run the following command:

npm install react-confetti-boom

Usage

Import the Confetti component and add it to your JSX.

import React from 'react';
import Confetti from 'react-confetti-boom';

function MyApp() {
  return (
    <div>
      <h1>My React App</h1>
      <Confetti />
    </div>
  );
}

export default MyApp;

Live Demo

You can check out the live demo of react-confetti-boom in action on the following page: https://almond-bongbong.github.io/react-confetti-boom/

The demo page provides an interactive way to customize the confetti settings, such as starting position, particle count, angle, shape size, and colors. This helps you visualize how the confetti effect will look in your own project.

Props

| Name | Type | Default | Description | | -------------- | ---------------- | -------------------------------------------- | ----------------------------------------------------------------------------------- | | mode | 'boom' | 'fall' | 'boom' | Mode for confetti animation. 'boom' for explosion-like, 'fall' for rain-like effect | | x | number | 0.5 | Horizontal starting position of confetti as a ratio of canvas width (0 to 1) | | y | number | 0.5 | Vertical starting position of confetti as a ratio of canvas height (0 to 1) | | particleCount | number | 30 | Number of confetti particles to generate | | deg | number | 270 | Initial angle (in degrees) at which particles are emitted | | shapeSize | number | 12 | Size of confetti particles | | spreadDeg | number | 30 | Angle (in degrees) that particles can deviate from the initial angle (deg) | | effectInterval | number | 3000 | Interval (in ms) between consecutive confetti bursts | | effectCount | number | 1 | Number of confetti bursts to render | | colors | string[] | ['#ff577f', '#ff884b', '#ffd384', '#fff9b0'] | Array of colors for confetti particles, in hex format | | launchSpeed | number | 1 | Initial speed at which particles are launched |

Example

import React from 'react';
import Confetti from 'react-confetti-boom';

function Celebration() {
  return (
    <div>
      <h1>Congratulations!</h1>
      <Confetti
        x={0.5}
        y={0.1}
        particleCount={50}
        deg={270}
        shapeSize={8}
        spreadDeg={45}
        effectInterval={2000}
        effectCount={3}
        colors={['#ff577f', '#ff884b', '#ffd384', '#fff9b0', '#3498db']}
      />
    </div>
  );
}

export default Celebration;

This example will render a confetti animation with 50 particles starting at 10% from the top of the canvas. The particles will be emitted at a 270-degree angle, with a 45-degree spread. The confetti bursts will occur every 2 seconds, for a total of 3 bursts. The confetti particles will use the provided array of colors.

License

This project is licensed under the terms of the MIT License.