Depth-stacked vertical streams of glowing glyphs cascade downward — abstract characters at different focal layers, with parallax and a soft head glow on each leading character.
import DigitalRain from '@crazygl/hero-digital-rain';
export default function Hero() {
return (
<DigitalRain
heading="The signal."
headColor="#e8ffe6"
trailColor="#3effb6"
fallSpeed={1}
glow={1}
/>
);
}transparent (drip over the page), backgroundColor.headColor (hot lead glyph), trailColor, accentColor (per-column tint mix), columnDensity, fontSize, fallSpeed, glow (head bloom), depthBlur (back-layer softness).npm install @crazygl/hero-digital-rainThe component takes the same props you see in the live customizer on the right — every default ships poster-quality.
import DigitalRainCurtain from '@crazygl/hero-digital-rain';
export default function Landing() {
return (
<DigitalRainCurtain />
);
}The wrapper renders static HTML on the server and only initialises the canvas after hydration, so search engines see your copy.
// app/page.tsx — works in SSR-first frameworks (Next, Remix, Astro, etc.)
'use client';
import DigitalRainCurtain from '@crazygl/hero-digital-rain';
export default function Page() {
return (
<section>
<DigitalRainCurtain
heading="Say hi."
subheading="Your new hero."
/>
<article>
<h2>Welcome</h2>
<p>Your content keeps its own voice below the hero.</p>
</article>
</section>
);
}