# Beam Background

> Thin beams of light falling down faint rails.

Data moving through a system: each rail carries a beam at its own pace. For pipelines, APIs and infrastructure pages.

- Family: Backgrounds
- Plan: Creative. Included with Creative.
- Requires: React, Tailwind CSS v4 and the motion package
- Page with a live preview: https://galactrex.com/ui/beam-background/
- Licence: https://galactrex.com/ui/license/

## Install

```sh
npx @galactrex/ui login   # once, with an API key from https://galactrex.com/account/
npx @galactrex/ui add beam-background
```

It installs to `components/galactrex/beam-background.tsx`, with the shared motion helpers beside it. First time in a project: `npx @galactrex/ui init` (setup guide: https://galactrex.com/docs/ui-components-setup/).

## Usage

```tsx
import { BeamBackground } from "@/components/galactrex/beam-background";

<section className="relative overflow-hidden">
  <BeamBackground />
  <h1 className="relative">Pipeline</h1>
</section>
```

## Props

| Prop | Type | Default | Description |
| --- | --- | --- | --- |
| `beams` | `number` | `9` | How many rails carry beams. |
| `speed` | `number` | `5` | Average seconds to fall the full height. |
| `length` | `number` | `22` | Beam length as % of the height. |
| `rails` | `boolean` | `true` | Show the faint rails. |
| `color` | `string` | `var(--gxui-glow)` | Beam colour. |
| `className` | `string` | — | Extra classes for the outer element. |

## Variants

- **Rails.** Beams on visible tracks.
- **Rain.** `rails={false}` for free-falling light.

## Accessibility

- Decorative only and aria-hidden; never takes pointer events.

## Motion

- Transform-only fall per beam, staggered.
- Stops offscreen.
- Reduced motion: only the rails show.
