# Safe Zone Guide

Dev aid that hatches the regions a platform's own UI would cover. Defaults to the generic `useViewport().safe` insets; a `platform` prop swaps in TikTok, Reels, Shorts or YouTube's own reserved zones.

```bash
npx shadcn add https://www.reelcn.dev/r/safe-zone-guide.json
```

Usage:

```tsx
<SafeZoneGuide platform="tiktok" />
```

Use for:

- Checking a caption, lower third or button clears a platform's UI before publishing
- Auditing a layout across 16:9, 9:16 and 1:1 while building a component

Avoid:

- Shipping in the final render. This is a development-time guide, not a look

Dependencies:

- `remotion`


## Props

| Name | Type | Default | Description |
| --- | --- | --- | --- |
| delay? | `number` | — | Frames to wait before entering. |
| duration? | `number` | — | Enter duration in frames. Defaults to 0.6s. Some items reuse `duration` for an unrelated local timing. See that item's own prop docs. |
| exit? | `number \| boolean` | — | Exit at the end of the parent `<Sequence>`. `false` keeps it on screen, a number sets the exit length in frames. |
| motion? | `MotionPersonality` | — | Override the theme's motion personality. |
| poster? | `boolean` | — | Renders fully entered, with no exit: for a still frame or thumbnail. Defaults to `false`. |
| holdFrames? | `number` | — | Delays the start of the exit window by this many frames, for a minimum on-screen hold. Defaults to `0`. |
| platform? | `SafeZoneGuidePlatform` | — | Named platform preset for its own reserved UI. Omit for the generic `useViewport().safe` insets. |
| color? | `string` | — | Hatch and label color. Defaults to the theme highlight. |
| opacity? | `number` | `0.9` | Region fill opacity, 0-1. |
| showLabels? | `boolean` | `true` | Draw the region names. |
| style? | `CSSProperties` | — |  |
| className? | `string` | — |  |