# Grain Flicker

https://fieldbook.lizardi.mx/components/grain-flicker-layer

Category: Backgrounds
![Still of the Grain Flicker component, a Fieldbook UI component in Backgrounds.](https://fieldbook.lizardi.mx/thumbs/grain-flicker-layer.webp)
Preview video: https://ejpqcxcjbiyabxkx.public.blob.vercel-storage.com/previews/grain-flicker-layer-f944c10c2a.mp4 (5 s, silent)

Grain Flicker: A grain layer that redraws itself every few frames, so flat backgrounds get the restless flicker of a running projector instead of a fixed texture.

## Frameworks

react, vue, svelte, astro, html

## Preview controls

These controls are passed to the demo. Defaults and limits describe the preview; consult the implementation for its full prop API.

| Name | Type | Default | Options or constraints |
| --- | --- | --- | --- |
| opacity | number | 0.06 | From 0.02 to 0.25; step 0.01 |
| grainScale | number | 1 | From 1 to 4; step 1 |
| refreshInterval | number | 2 | From 1 to 12; step 1 |
| animate | boolean | true | No additional limit in the metadata. |

## Usage notes

Grain Flicker uses the wide preview frame with a light/dark theme setting.

### Which frameworks are available for Grain Flicker?

Grain Flicker is available for React, Vue, Svelte, Astro, HTML. The live preview uses React; the source observations below apply to index.tsx. Check the selected port before relying on the same interactions.

### What does Grain Flicker depend on?

The React metadata lists no additional npm dependencies beyond React.

### What accessibility details are visible in Grain Flicker?

The React source for Grain Flicker includes: attributes and handlers (aria-hidden). These are source observations. Verify accessible names, focus order and keyboard behavior in the composed page.

### How does Grain Flicker handle reduced motion?

Grain Flicker reads the motion preference in its React source through matchMedia(prefers-reduced-motion). Check the full implementation, shared styles and selected port with reduced motion enabled; these observations do not establish that every animation stops.

## Install through MCP

Connect your client, call get_component to retrieve the implementation, then get_install_command for installation instructions. Choose a listed framework, integrate the returned source and verify it in your application.

```json
{
  "tool": "get_component",
  "arguments": {
    "slug": "grain-flicker-layer",
    "framework": "react"
  }
}
```

[For agents](https://fieldbook.lizardi.mx/docs/agents)
[MCP](https://fieldbook.lizardi.mx/api/mcp)

## Related open components

- [Aurora band glow](https://fieldbook.lizardi.mx/components/aurora-band-glow)
- [Fanned wave threads](https://fieldbook.lizardi.mx/components/fanned-wave-threads)
- [Flaming iris eye](https://fieldbook.lizardi.mx/components/flaming-iris-eye)
- [Flickering square mesh](https://fieldbook.lizardi.mx/components/flickering-square-mesh)
- [Gradient slat spotlight](https://fieldbook.lizardi.mx/components/gradient-slat-spotlight)
- [Halftone wave field](https://fieldbook.lizardi.mx/components/halftone-wave-field)
