Create a simple animation library that have the following things. Expose the API as React Components.
- Bounce
- FadeIn and Out with easing effects
- Slide up to limit and come back to original location
- Pulse
You can make your own API names. You can use either CSS to animate, or JavaScript such as requestAnimationFrame
. Either is fine.
- You can use any lib for easing effects.
- No other library
<Bounce duration={1000} delay={2000} iterationCount={true} easing={'bounce'} dropHeight={-40}> your content here </Bounce>
Property |
Required |
Type |
Default |
Description |
duration |
optional |
number |
2000 |
duration of animation in ms |
delay |
optional |
number |
0 |
delay before the animation in ms |
iterationCount |
optional |
boolean |
1 |
use Infinity to show animation infinitely |
easing |
optional |
string |
bounce |
easing effect for the animation |
dropHeight |
optional |
number |
-20px |
maximum height for the animation effect |
<FadeIn duration={1000} delay={2000} iterationCount={true} easing={'linear'} > your content here </FadeIn>
Property |
Required |
Type |
Default |
Description |
duration |
optional |
number |
2000 |
duration of animation in ms |
delay |
optional |
number |
0 |
delay before the animation in ms |
iterationCount |
optional |
boolean |
1 |
use Infinity to show animation infinitely |
easing |
optional |
string |
linear |
easing effect for the animation |
<FadeOut duration={1000} delay={2000} iterationCount={true} easing={'linear'}> your content here </FadeOut>
Property |
Required |
Type |
Default |
Description |
duration |
optional |
number |
2000 |
duration of animation in ms |
delay |
optional |
number |
0 |
delay before the animation in ms |
iterationCount |
optional |
boolean |
1 |
use Infinity to show animation infinitely |
easing |
optional |
string |
linear |
easing effect for the animation |
<Pulse duration={1000} delay={2000} iterationCount={true} easing={'linear'} > your content here </Pulse>
Property |
Required |
Type |
Default |
Description |
duration |
optional |
number |
2000 |
duration of animation in ms |
delay |
optional |
number |
0 |
delay before the animation in ms |
iterationCount |
optional |
boolean |
1 |
use Infinity to show animation infinitely |
easing |
optional |
string |
linear |
easing effect for the animation |
<SlideUpDown duration={1000} delay={2000} iterationCount={true} easing={'linear'} maxHeight={-40}> your content here </SlideUpDown>
Property |
Required |
Type |
Default |
Description |
duration |
optional |
number |
2000 |
duration of animation in ms |
delay |
optional |
number |
0 |
delay before the animation in ms |
iterationCount |
optional |
boolean |
1 |
use Infinity to show animation infinitely |
easing |
optional |
string |
linear |
easing effect for the animation |
maxHeight |
optional |
number |
-20px |
maximum height for the animation effect |