# Mirror (https://openknowledge.ai/docs/reference/components/mirror)

Render a read-only copy of a `<MirrorSource>` block from another doc. Use to keep the same content in sync across multiple docs without copy-paste — edits land at the source, every Mirror reflects the change

## Example

This body renders live from wherever the `<MirrorSource id="overview-diagram">`
with a matching id lives — edits there ripple here without a copy step.

````text
```mdx
<Mirror src="specs/architecture" anchor="overview-diagram" />
```
````

## Props

| Prop | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `src` | `string` | yes |  | Path of the source doc, extension-less (e.g. \`api-spec\`). |
| `anchor` | `string` | yes |  | Id of the \`\<MirrorSource>\` block within the source doc. |

## Also: `<MirrorSource>`

Mark a block as the source of truth for content that appears in multiple docs. Wrap any block content; `<Mirror src="…" anchor="<id>">` references render this verbatim read-only at every call-site. Edit here, propagate everywhere.

The canonical content this block owns. Every `<Mirror>` that references
this id anywhere in the project reads from here.

```mdx
<MirrorSource id="demo-1">
  Authoritative content lives inside this block — edits here propagate to every `<Mirror>` that references this id.
</MirrorSource>
```

| Prop | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `id` | `string` | yes |  | Stable id agents and authors use to reference this block from \`\<Mirror>\` elsewhere. |
| `children` | `ReactNode` | yes |  | Block content this MirrorSource owns — paragraphs, callouts, code, nested JSX, anything. |

*Also matches:* `mirror`, `sync`, `synced`, `transclude`, `embed`, `reference`, `shared block`

## Author it

Type `/mirror` in the editor to insert it from the slash menu, or write the tag directly in source mode. The Properties panel on the right of the editor exposes every prop above as a form field once the block is selected.