CrazyGLCrazyGLHomeExploreGitHubBrowse heroesLoading hero…← Back to gallery@crazygl/dither-gradient

Dither Gradient

A dark editorial hero lit by a single grainy warm gradient that ramps along one animated sine contour (no mirrored band). The contour breathes with a pseudo-random amplitude, and the giant wordmark is rendered into the same shader so it is revealed by the light — bright where the gradient washes over it, sinking into near-black shadow elsewhere. Quantised, dithered and grained for a retro/print texture.

ReactWebGLFont#gradient#dither#sine#wave#webgl#editorial#wordmark#grain#warm#dark

Usage

import DitherGradient from '@crazygl/hero-dither-gradient';

export default function Hero() {
  return (
    <DitherGradient
      wordmark="CGL"
      eyebrow={"Design for those who\nwant to become a better\nversion of themselves."}
      colorHot="#ffe6c8"
    />
  );
}

Customise

  • Contenteyebrow (multi-line) and the big wordmark.
  • WavewaveAmplitude, waveFrequency, waveWidth, waveTilt, waveBaseY, flowSpeed, ampSpeed, intensity.
  • Ditherbands (quantised steps), dither (stipple strength), grain.
  • Colours — five-stop warm ramp: colorBase, colorDeep, colorMid, colorWarm, colorHot, plus textColor.
  • WordmarkwordmarkFont, wordmarkWeight, wordmarkSize, wordmarkY, textGlow, textAmbient.

Best for

  • Editorial / brand statement landing pages and agency sites.
  • Dark-mode hero sections wanting a print-like, retro-warm texture.
  • Type-forward wordmark reveals for studios and product launches.
01 · Install the package

One command, zero config.

npm install @crazygl/hero-dither-gradient
02 · Render the component

Import once, drop it in.

The component takes the same props you see in the live customizer on the right — every default ships poster-quality.

hero.tsx
import DitherGradient from '@crazygl/hero-dither-gradient';

export default function Landing() {
  return (
    <DitherGradient />
  );
}
03 · Use it in a page

SSR-safe by default.

The wrapper renders static HTML on the server and only initialises the canvas after hydration, so search engines see your copy.

page.tsx
// app/page.tsx — works in SSR-first frameworks (Next, Remix, Astro, etc.)
'use client';

import DitherGradient from '@crazygl/hero-dither-gradient';

export default function Page() {
  return (
    <section>
      <DitherGradient
        heading="Say hi."
        subheading="Your new hero."
      />
      <article>
        <h2>Welcome</h2>
        <p>Your content keeps its own voice below the hero.</p>
      </article>
    </section>
  );
}
You might also like

Similar heroes

Gradient Text

Heading filled with a slowly drifting multi-stop linear gradient — three configurable colours, customizable angle, optional animation.

Interactive Orb

A fluid iridescent marble floating in the dark. Domain-warped aurora currents — deep navy lobes, cyan pools, hot white folds — swirl across the sphere and flow toward your cursor, with fine contour ripples and filmic grain.

Filament Ribbon

A silk ribbon woven from hundreds of fine luminous strands undulates across the lower third of a dark hero, while teal and amber light travels along it and glowing beads ride the filaments. Faint blueprint grid, centered copy, CTA.

Progressive Blur Text

A giant display word that is razor-sharp at the top and melts into a progressively heavier blur toward the bottom — a true variable-radius blur per row, not a gradient-masked copy. Bold, editorial, fully recolourable.

Animated Text Gradient

A heading filled with a slowly-shifting multi-stop gradient that loops across up to five user colours, with controllable angle and speed.

Liquid Aurora Gradient

A full-bleed liquid gradient: large organic blobs of electric blue and warm orange bleed and morph across a near-black field, driven by domain-warped FBM in a single WebGL2 fragment shader. Slow lava-lamp / aurora flow with deep black negative space; the pointer gently pulls the fluid toward the cursor.
Live customizer

Dither Gradient

Wave amplitude0.16How tall the sine wave swings.Wave frequency1.05How many crests cross the width.Gradient spread0.55How far the warm gradient ramps out from the sine contour.Tilt0.22Diagonal slope of the gradient contour.Vertical position0.46Scroll speed0.45How fast the wave travels sideways.Breathe speed0.5How fast the amplitude randomly breathes.Glow intensity1.25Bands12Number of quantised steps in the gradient.Dither3Strength of the ordered-dither stipple between bands.Grain0.04Base (shadow)DeepMidWarmHot coreChrome textWordmark fontWordmark weight800Wordmark size0.96Width the wordmark spans.Wordmark position0.72Text glow1.3How strongly the wave lights the wordmark.Text shadow visibility0.07How visible the wordmark stays in shadow.Chrome font
CrazyGL · crazygl.comProgrammable hero sections for real websites.