# blocks/image

> Image — an `<img>` block. Paste or drop image files, or choose them from "/image".

Image (F-37) — an `<img>` block. Paste or drop image files, or choose them from "/image". Uploads go through the host's `upload(file) → Promise<url>` editor option; without one the image is kept as a data URL, so it works with no setup. Markdown: `![alt](src)`.

```js
import image from 'verbal-editor/blocks/image';
```

| JS gzip | CSS gzip |
| --- | --- |
| 0.93 KB | 0.17 KB |

See it live on [Media](#/examples/media) — every example page on the landing is editable.

## Contract

|  |  |
| --- | --- |
| Block type | `image` |
| Content | no text of its own |
| Props | `src: string` `alt: string` |
| Slash menu | `▣ Image` |
| Keywords | `picture` `photo` `upload` |
| Pastes from | `<img>` `Markdown` |
| Copies as | `Markdown` `HTML` |

## Acceptance

| Feature | Acceptance | Budget |
| --- | --- | --- |
| F-37 · Image | Works with no upload hook configured (data URL fallback) | ≤ 1KB |
