CrazyGLCrazyGLHomeExploreGitHubBrowse heroesLoading hero…← Back to gallery@crazygl/scrambly-text

Scrambly Text

Heading scrambled into random glyphs that resolve in a non-left-to-right order — characters lock in scattered across the word.

ReactFont#scramble#decode#typography

Usage

import ScramblyText from '@crazygl/hero-scrambly-text';

export default function Hero() {
  return (
    <ScramblyText
      phrases={`STAY WEIRD\nMAKE IT REAL\nSHIP IT`}
      scrambleColor="#5b8def"
    />
  );
}

Customise

  • Contentphrases (one phrase per line, cycled) and alphabet (the pool of glyphs used while scrambling).
  • TimingholdMs (how long a resolved phrase holds), scrambleMs (resolve duration), perCharShuffle (glyph re-rolls per second).
  • TypographytextColor (locked letters), scrambleColor (mid-scramble letters), fontSize, headingFontFamily, headingFontWeight.
  • BackdroptransparentBackground, bgColor.

Best for

  • Developer-tool and SaaS landing pages that want a "decode" reveal.
  • Brand taglines and product launches with a techy, terminal feel.
  • Portfolio intros cycling through a few punchy statements.
01 · Install the package

One command, zero config.

npm install @crazygl/hero-scrambly-text
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 ScramblyText from '@crazygl/hero-scrambly-text';

export default function Landing() {
  return (
    <ScramblyText />
  );
}
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 ScramblyText from '@crazygl/hero-scrambly-text';

export default function Page() {
  return (
    <section>
      <ScramblyText
        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

Text Scrambler

Heading that scrambles into glyph soup and resolves left-to-right into the target phrase — a hacker-decode reveal that rotates through several phrases.

Scramble Shuffle Text

A hybrid: letters first scramble into random glyphs, then physically shuffle position, then settle into their target — two effects in one timeline.

Gradient Text

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

Text Illuminate

A spotlight follows the cursor across the heading — letters under the beam glow and brighten, the rest fall into shadow.

Text Doodles

Heading marked up with hand-drawn doodle annotations — circle one word, scribble under another, arrow into a third. Reads like a designer's notebook.

Text Rotation

A static prefix with a vertical slot-machine rotator behind it — each word slides up, settles, and the next one rises into place.
Live customizer

Scrambly Text

Hold (ms)2000msScramble (ms)1200msShuffles per second20Locked colourScramble colourFont size120pxFontWeight700Transparent backgroundBackground
CrazyGL · crazygl.comProgrammable hero sections for real websites.