Skip to content

COMPONENT / glitch-heading

Glitch Heading_

Display heading that tears into signal and neon slices in a short burst every 3.2s, never continuously. Requires @cybr/tokens and @cybr/effects.

Install

  1. 1. Map the @cybr namespace, once per project. Add this inside your components.json, or into its existing "registries" object. No components.json yet? Run npx shadcn@latest init first to create one.

    "registries": { "@cybr": "https://cybr-ui.com/r/{name}.json" }
  2. 2. Add components:

    $ npx shadcn@latest add @cybr/glitch-heading

If shadcn reports Unknown registry "@cybr", step 1 is missing from that project's components.json.

Preview

Signal lost

Props

Component props
PropTypeDefaultDescription
as"h1" | "h2" | "h3" | "h4" | "h5" | "h6""h2"Heading level. Pick the one that fits your document outline; the look does not change.
childrenReactNode—Heading text. It is rendered once visibly and twice more as aria-hidden slice copies, so keep it to plain text or inline elements.
classNamestring—Extra classes, merged after the defaults with cn().
...propsComponentProps<"h2">—Every other native heading attribute and ref is forwarded.

Usage

Needs both stylesheets from @cybr/tokens and @cybr/effects. After the install, import them in app/globals.css:

@import "tailwindcss";
@import "../styles/cybr-tokens.css";
@import "../styles/cybr-effects.css";
import { GlitchHeading } from "@/components/ui/glitch-heading";

export function Outage() {
  return <GlitchHeading as="h1">Signal lost</GlitchHeading>;
}

Behaviour

Accessibility