---
name: React Email
slug: react-email
type: github
source_url: https://github.com/resend/react-email
organization: Resend
organization_slug: resend
total_releases: 123
latest_version: @react-email/editor@1.1.0
latest_date: 2026-04-17
last_updated: 2026-04-19
tracking_since: 2025-11-07
canonical: https://releases.sh/resend/react-email
organization_url: https://releases.sh/resend
---

<Release version="@react-email/editor@1.1.0" date="April 17, 2026" published="2026-04-17T17:53:15.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%401.1.0">
### Minor Changes

* f5b1338: add image bubble menu edit-link form and unlink button

### Patch Changes

* 1be5684: Do not preserve button href through HTML round-trip

</Release>

<Release version="@react-email/editor@1.0.2" date="April 17, 2026" published="2026-04-17T14:14:08.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%401.0.2">
### Patch Changes

* 4155ec9: fix slash command scrollbar extending past rounded corners

</Release>

<Release version="@react-email/editor@1.0.1" date="April 17, 2026" published="2026-04-17T13:48:48.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%401.0.1">
### Patch Changes

* 8e4226a: introduce paragraph option to the custom theme property

</Release>

<Release version="@react-email/ui@6.0.0" date="April 16, 2026" published="2026-04-16T20:51:17.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/ui%406.0.0">
### Major Changes

* 3ca799d: Rename @react-email/preview-server -> @react-email/ui.

  Same exact code, but with a different name. The equivalent `react-email` version has also been udpated accordingly. The old @react-email/preview-server will be deprecated.

  ### How to migrate

  **Update your dependencies** -- remove `@react-email/preview-server`, install `@react-email/ui`:

  ```diff
  - npm install @react-email/preview-server
  + npm install @react-email/ui
  ```

### Patch Changes

* 5bd0d43: copy toolbar insights for AI
* 91ca688: remove extra margin from sending button

</Release>

<Release version="@react-email/render@2.0.7" date="April 16, 2026" published="2026-04-16T20:51:15.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.7">
### Patch Changes

* 7fc539d: fix export map ordering between convex and node

</Release>

<Release version="react-email@6.0.0" date="April 16, 2026" published="2026-04-16T20:51:14.000Z" url="https://github.com/resend/react-email/releases/tag/react-email%406.0.0">
### Major Changes

* d0a7a52: Move all components and utilities into the `react-email` package

  All components (previously in `@react-email/components` or individual packages like `@react-email/button`) and rendering utilities (previously in `@react-email/render`) are now exported directly from `react-email`. This unifies the install and import experience into a single package.

  We're going to deprecate all packages except `@react-email/render` and `@react-email/preview-server`, and they will not be updated anymore.

  ### Breaking change

  Imports from `@react-email/components`, `@react-email/render`, or individual component packages (e.g. `@react-email/button`) are no longer the recommended path and they will all be deprecated with the exception of `@react-email/render` and `@react-email/editor`, and `render` will remain exported from `react-email`. Consumers should import everything from `react-email`.

  ### Why

  Having separate packages for components (`@react-email/components`), and the CLI (`react-email`) created unnecessary confusion, and a maintenance burden for us.

  ### How to migrate

  1. **Update your dependencies** -- remove `@react-email/components`, keep `react-email`:

     ```diff
     - npm install @react-email/components react-email @react-email/preview-server
     + npm install react-email @react-email/preview-server
     ```

  2. **Update your imports**:

     ```diff
     - import { Button, Html, Head, render } from "@react-email/components";
     + import { Button, Html, Head, render } from "react-email";
     ```

  3. The `@react-email/preview-server` and `@react-email/editor` packages are not included in `react-email`

### Patch Changes

* a3a15ea: replace deprecated `url.parse()` with WHATWG URL API in the preview dev server.
* Updated dependencies \[7fc539d]
  * @react-email/render@2.0.7

</Release>

<Release version="@react-email/editor@1.0.0" date="April 16, 2026" published="2026-04-16T20:51:13.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%401.0.0">
### Major Changes

* 3ea987b: avoid injecting undefined css values
* abb7e8d: add `getEmailHTML()` and `getEmailText()` to `EmailEditorRef`, remove `getHTML()`, rename `onChange` to `onUpdate`

### Minor Changes

* 274647c: add placeholder style
* c95a1e5: add `onUploadImage` prop to `EmailEditor` and merge image paste/drop handlers into a single plugin
* 783f16f: don't add an extra focus scope provider if there's already one present above Inspector.Root
* 18323bd: add trailing nodes for columns and sections
* 73ae830: New `ThemeConfig` API for custom theming

### Patch Changes

* 766cc41: remove placeholder from starter kit, keep it in standalone editor
* 08c2865: Add `children` prop to `EmailEditor` for composing UI like the Inspector sidebar inside the editor context
* ca6a71d: Render Table as a native `<table>` instead of `Section` to fix invalid `<tr>` inside `<td>` nesting in email output
* 289290b: improved default for inspector
* 7d587f3: Align `EmailEditor`'s `onReady` callback with `onUpdate` so it receives `EmailEditorRef`
* 07fb6f0: fix color pickers closing and not letting drag happen in root node
* 29a2cd9: remove line height from default inbox styles
* c9cfb15: `InspectorBreadcrumbSegment.node` is now always a `FocusedNode`; exports `getNodeMeta` for custom breadcrumb label/icon mapping.
* f3f988b: collapse `SlashCommand.Root` into `SlashCommand` and stop exporting internal `CommandList`/`CommandListProps`. Replace `<SlashCommand.Root ...>` with `<SlashCommand ...>`.
* Updated dependencies \[a3a15ea]
* Updated dependencies \[d0a7a52]
  * react-email@6.0.0

</Release>

<Release version="create-email@1.2.4" date="April 16, 2026" published="2026-04-16T20:40:20.000Z" url="https://github.com/resend/react-email/releases/tag/create-email%401.2.4">
### Patch Changes

* bd14364: use the new @react-email/ui

</Release>

<Release version="@react-email/editor@1.0.0-canary.51" date="April 16, 2026" published="2026-04-16T17:44:03.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%401.0.0-canary.51">
# @react-email/editor

## 0.0.0-canary.51

### Major Changes

* abb7e8d: add `getEmailHTML()` and `getEmailText()` to `EmailEditorRef`, remove `getHTML()`, rename `onChange` to `onUpdate`

### Patch Changes

* 766cc41: remove placeholder from starter kit, keep it in standalone editor
* ca6a71d: Render Table as a native `<table>` instead of `Section` to fix invalid `<tr>` inside `<td>` nesting in email output
* 7d587f3: Align `EmailEditor`'s `onReady` callback with `onUpdate` so it receives `EmailEditorRef`
* 07fb6f0: fix color pickers closing and not letting drag happen in root node
  * react-email@6.0.0-canary.2

## 0.0.0-canary.50

### Major Changes

* 3ea987b: avoid injecting undefined css values

### Minor Changes

* 274647c: add placeholder style
* c95a1e5: add `onUploadImage` prop to `EmailEditor` and merge image paste/drop handlers into a single plugin
* 783f16f: don't add an extra focus scope provider if there's already one present above Inspector.Root
* 18323bd: add trailing nodes for columns and sections

### Patch Changes

* 29a2cd9: remove line height from default inbox styles
* f3f988b: collapse `SlashCommand.Root` into `SlashCommand` and stop exporting internal `CommandList`/`CommandListProps`. Replace `<SlashCommand.Root ...>` with `<SlashCommand ...>`.
  * react-email@6.0.0-canary.1

## 0.0.0-canary.49

### Patch Changes

* 08c2865: Add `children` prop to `EmailEditor` for composing UI like the Inspector sidebar inside the editor context
* Updated dependencies \[a3a15ea]
* Updated dependencies \[d0a7a52]
  * react-email@6.0.0-canary.0

</Release>

<Release version="@react-email/ui@6.0.0-canary.2" date="April 16, 2026" published="2026-04-16T14:12:43.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/ui%406.0.0-canary.2">
### Patch Changes

* 91ca688: remove extra margin from sending button

</Release>

<Release version="react-email@6.0.0-canary.2" date="April 16, 2026" published="2026-04-16T14:12:42.000Z" url="https://github.com/resend/react-email/releases/tag/react-email%406.0.0-canary.2">
</Release>

<Release version="@react-email/editor@0.0.0-canary.51" date="April 16, 2026" published="2026-04-16T14:12:41.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%400.0.0-canary.51">
### Major Changes

* abb7e8d: add `getEmailHTML()` and `getEmailText()` to `EmailEditorRef`, remove `getHTML()`, rename `onChange` to `onUpdate`

### Patch Changes

* 766cc41: remove placeholder from starter kit, keep it in standalone editor
* ca6a71d: Render Table as a native `<table>` instead of `Section` to fix invalid `<tr>` inside `<td>` nesting in email output
* 7d587f3: Align `EmailEditor`'s `onReady` callback with `onUpdate` so it receives `EmailEditorRef`
* 07fb6f0: fix color pickers closing and not letting drag happen in root node
  * react-email@6.0.0-canary.2

</Release>

<Release version="@react-email/ui@6.0.0-canary.1" date="April 15, 2026" published="2026-04-15T20:41:42.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/ui%406.0.0-canary.1">
### Major Changes

* 3ca799d: Rename @react-email/preview-server -> @react-email/ui.

  Same exact code, but with a different name. The equivalent `react-email` version has also been udpated accordingly. The old @react-email/preview-server will be deprecated.

  ### How to migrate

  **Update your dependencies** -- remove `@react-email/preview-server`, install `@react-email/ui`:

  ```diff
  - npm install @react-email/preview-server
  + npm install @react-email/ui
  ```

### Patch Changes

* 5bd0d43: copy toolbar insights for AI

</Release>

<Release version="@react-email/render@2.0.7-canary.0" date="April 15, 2026" published="2026-04-15T20:41:41.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/render%402.0.7-canary.0">
### Patch Changes

* 7fc539d: fix export map ordering between convex and node

</Release>

<Release version="react-email@6.0.0-canary.1" date="April 15, 2026" published="2026-04-15T20:41:40.000Z" url="https://github.com/resend/react-email/releases/tag/react-email%406.0.0-canary.1">
### Patch Changes

* Updated dependencies \[7fc539d]
  * @react-email/render@2.0.7-canary.0

</Release>

<Release version="@react-email/editor@0.0.0-canary.50" date="April 15, 2026" published="2026-04-15T20:41:39.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%400.0.0-canary.50">
### Major Changes

* 3ea987b: avoid injecting undefined css values

### Minor Changes

* 274647c: add placeholder style
* c95a1e5: add `onUploadImage` prop to `EmailEditor` and merge image paste/drop handlers into a single plugin
* 783f16f: don't add an extra focus scope provider if there's already one present above Inspector.Root
* 18323bd: add trailing nodes for columns and sections

### Patch Changes

* 29a2cd9: remove line height from default inbox styles
* f3f988b: collapse `SlashCommand.Root` into `SlashCommand` and stop exporting internal `CommandList`/`CommandListProps`. Replace `<SlashCommand.Root ...>` with `<SlashCommand ...>`.
  * react-email@6.0.0-canary.1

</Release>

<Release version="react-email@6.0.0-canary.0" date="April 14, 2026" published="2026-04-14T10:26:53.000Z" url="https://github.com/resend/react-email/releases/tag/react-email%406.0.0-canary.0">
### Major Changes

* d0a7a52: Move all components and utilities into the `react-email` package

  All components (previously in `@react-email/components` or individual packages like `@react-email/button`) and rendering utilities (previously in `@react-email/render`) are now exported directly from `react-email`. This unifies the install and import experience into a single package.

  We're going to deprecate all packages except `@react-email/render` and `@react-email/preview-server`, and they will not be updated anymore.

  ### Breaking change

  Imports from `@react-email/components`, `@react-email/render`, or individual component packages (e.g. `@react-email/button`) are no longer the recommended path and they will all be deprecated with the exception of `@react-email/render` and `@react-email/editor`, and `render` will remain exported from `react-email`. Consumers should import everything from `react-email`.

  ### Why

  Having separate packages for components (`@react-email/components`), and the CLI (`react-email`) created unnecessary confusion, and a maintenance burden for us.

  ### How to migrate

  1. **Update your dependencies** -- remove `@react-email/components`, keep `react-email`:

     ```diff
     - npm install @react-email/components react-email @react-email/preview-server
     + npm install react-email @react-email/preview-server
     ```

  2. **Update your imports**:

     ```diff
     - import { Button, Html, Head, render } from "@react-email/components";
     + import { Button, Html, Head, render } from "react-email";
     ```

  3. The `@react-email/preview-server` and `@react-email/editor` packages are not included in `react-email`

### Patch Changes

* a3a15ea: replace deprecated `url.parse()` with WHATWG URL API in the preview dev server.

</Release>

<Release version="@react-email/preview-server@6.0.0-canary.0" date="April 14, 2026" published="2026-04-14T10:26:52.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/preview-server%406.0.0-canary.0">
</Release>

<Release version="@react-email/editor@0.0.0-canary.49" date="April 14, 2026" published="2026-04-14T10:26:51.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%400.0.0-canary.49">
### Patch Changes

* 08c2865: Add `children` prop to `EmailEditor` for composing UI like the Inspector sidebar inside the editor context
* Updated dependencies \[a3a15ea]
* Updated dependencies \[d0a7a52]
  * react-email@6.0.0-canary.0

</Release>

<Release version="@react-email/editor@0.0.0-experimental.48" date="April 13, 2026" published="2026-04-13T20:27:18.000Z" url="https://github.com/resend/react-email/releases/tag/%40react-email/editor%400.0.0-experimental.48">
# @react-email/editor

</Release>

<Pagination page="1" total-pages="7" total-items="123" next="https://releases.sh/resend/react-email.md?page=2" />
