1.0.4 • Published 3 years ago
react-particle-backgrounds v1.0.4
React-Particle-Backgrounds
Simple and customisable animated particle backgrounds for React
Demo
https://mcbp.github.io/React-Particle-Backgrounds-Demo
Install
npm install --save react-particle-backgroundsBasic Example
The <ParticleBackground /> component takes only one prop: settings.
It is defined as an object with specific shape, this is detailed below in the example code.
import React from 'react'
import ParticleBackground from 'react-particle-backgrounds'
const App = () => {
const settings = {
canvas: {
canvasFillSpace: true,
width: 200,
height: 200,
useBouncyWalls: false
},
particle: {
particleCount: 50,
color: '#94ecbe',
minSize: 2,
maxSize: 5
},
velocity: {
directionAngle: 0,
directionAngleVariance: 360,
minSpeed: 1,
maxSpeed: 3
},
opacity: {
minOpacity: 0,
maxOpacity: 0.5,
opacityTransitionTime: 3000
}
}
return <ParticleBackground settings={settings} />
}
export default AppProp Types
The accepted prop types and their default values are listed below
| Property | Type | Default Value | Description |
|---|---|---|---|
| canvasFillSpace | Boolean | true | Determines if the component will fill the width and height of it's parent container. |
| width | Number | 200 | Width of component in px, canvasFillSpace set to true will override this value. |
| height | Number | 200 | Height of component in px, canvasFillSpace set to true will override this value. |
| useBouncyWalls | Boolean | false | Controls whether particles pass through walls and out the other side, or bounce off the borders. |
| particleCount | Number | 50 | Number of particles rendered. |
| color | String | '#94ecbe' | Color of the particles, must be either hex or rgb. |
| minSize | Number | null | Smallest possible size for each particle. When set to null all particles will be drawn at maxSize. |
| maxSize | Number | 5 | Largest possible size for each particle. |
| directionAngle | Number | 0 | Direction of travel of particles in degrees, 0 being upwards. |
| directionAngleVariance | Number | 180 | Defines a range for directionAngle. Maximum angle being directionAngle + directionAngleVariance and minimum being directionAngle - directionAngleVariance. |
| minSpeed | Number | null | Smallest possible speed for each particle. When set to null all particles will be set to the value of maxSpeed. |
| maxSpeed | Number | 1 | Largest possible speed for each particle. |
| minOpacity | Number | null | Lowest possible opacity for each particle. When set to null all particles will be drawn at the value of maxOpacity. |
| maxOpacity | Number | 1 | Largest possible opacity for each particle. |
| opacityTransitionTime | Number | 3000 | Time in ms for particles to transition from minOpacity to maxOpacity. |
License
MIT