Documentation Index
Fetch the complete documentation index at: https://react.email/docs/llms.txt
Use this file to discover all available pages before exploring further.
EmailTheming extension
TheEmailTheming extension from @react-email/editor/plugins adds theme-aware styling
to the editor and provides a SerializerPlugin for theme-aware HTML export.
The active theme. Accepts a built-in preset (
'basic' or 'minimal') or a ThemeConfig
object for custom themes.Types
EditorTheme
EditorThemeInput
The widened theme type accepted by thetheme prop and EmailTheming.configure():
ThemeableComponent
The subset ofKnownThemeComponents that can be customized via ThemeComponentStyles:
ThemeComponentStyles
CSS-in-JS styles keyed by themeable component name:ThemeConfig
A custom theme configuration object:The built-in theme to inherit from. If omitted, uses
'minimal' reset styles as a base.CSS-in-JS styles keyed by component name. Values are merged on top of the base theme.
KnownThemeComponents
All component keys that a theme can style:KnownCssProperties
CSS properties that can be customized per theme component: Layout:align, width, height, padding, paddingTop, paddingRight,
paddingBottom, paddingLeft, margin, marginTop, marginRight, marginBottom,
marginLeft
Appearance: backgroundColor, color, borderRadius, borderWidth, borderColor,
borderStyle
Typography: fontSize, fontWeight, lineHeight, textDecoration, fontFamily,
letterSpacing
CssJs
A mapping of theme component keys to CSS properties:PanelGroup
Represents a group of configurable theme properties for a component:PanelInputProperty
An individual configurable CSS property within a panel:Theme helpers
createTheme
Creates a custom theme from scratch (usesminimal reset as base):
CSS-in-JS styles keyed by component name.
ThemeConfig object.
extendTheme
Extends a built-in theme with style overrides:The built-in theme to extend (
'basic' or 'minimal').CSS-in-JS styles to merge on top of the base theme.
ThemeConfig object.
Utility functions
getMergedCssJs
Merges the base theme styles with custom panel overrides:The active theme to use as a base.
Custom style overrides from the theme panel UI.
getResolvedNodeStyles
Resolves the final CSS styles for a specific node based on theme and document depth:The TipTap node to resolve styles for.
The node’s depth in the document tree. Affects styles for nested elements (e.g., nested lists).
The merged theme styles from
getMergedCssJs.