View the demo.
Svelte Ripple Action is a simple and customizable action for creating ripple effects on elements in a Svelte application.
Install the package from npm or your preferred package manager:
npm install svelte-ripple-action
import "svelte-ripple-action/ripple.css";
ripple action and use it on any element you want to have a ripple effect on:<script>
import { ripple } from "svelte-ripple-action";
</script>
<button use:ripple>Click me</button>
That's it! You now have a ripple effect on your element.
You can pass options to customize the ripple effect.
center?: booleanBy default, the ripple effect starts from the point where the user clicks on the element. If you want the ripple effect to start from the center of the element, you can pass the center option.
<button use:ripple={{ center: true }}>Click me</button>
color?: stringYou can customize the color of the ripple effect by passing a valid CSS color value to the color option.
<button
use:ripple={{
color: "rgba(255, 0, 0, 0.2)",
}}
>Red ripple</button>
duration?: numberYou can control the duration of the ripple effect in seconds by passing a number to the duration option.
<button use:ripple={{ duration: 2 }}>2 seconds</button>
<button use:ripple={{ duration: 0.2 }}>0.2 seconds</button>
maxRadius?: numberYou can control the maximum radius of the ripple effect in pixels by passing a number to the maxRadius option.
<button use:ripple={{ maxRadius: 100 }}>100px</button>