Lunogram

Templates

Design email campaigns with the block builder or React Email code editor

Each campaign has templates for your project's locales. After creating a campaign, navigate to the Editor step to design your templates.

Design Campaign

Locales

A locale defines the user's language and region, from broad (es for Spanish) to specific (en-PH for English from the Philippines). When sending, Lunogram matches the user's locale to the appropriate template, falling back to your default locale if no match exists.

Email Templates

Email templates are built on React Email, giving you access to a full set of battle-tested components designed for email client compatibility. Choose between two editing modes depending on your needs.

Block Builder

The block builder is a Notion-like editor that lets you compose emails by typing and using slash commands. Type / to insert content blocks such as images, buttons, headings, lists, and more. Select any block to adjust its properties in the sidebar.

This mode is ideal for marketers and content creators who want to build polished emails without writing code.

Email Block Builder

Code Editor

The code editor gives you full programmatic control over your email templates. Write JSX using React Email components in a TypeScript-enabled Monaco editor with autocompletion, syntax highlighting, and type checking.

Your template is a React component that receives typed props containing user data, event properties, and system variables. This means you can use JavaScript expressions, conditional rendering, loops, and any logic you need directly in your template.

Email Code Editor

The editor includes:

  • Live preview — see your email render in real time as you type, with responsive viewport toggles for mobile, tablet, and desktop
  • props.json panel — edit preview data or select a real user to see how the email renders with actual data
  • Plain text tab — edit the plain text version of your email alongside the HTML version
  • Image and variable toolbars — insert images from the media manager and variables from a searchable picker
  • Send test — send a test email to yourself with the current preview data

Supported Components

The following React Email components are available out of the box:

ComponentPurpose
Html, Head, BodyDocument structure
Container, Section, Row, ColumnLayout
Text, Heading, LinkTypography
ButtonCall-to-action with href
ImgImages
HrHorizontal rule
PreviewPreheader / preview text
FontWeb font declarations
TailwindTailwind CSS styling
MarkdownRender Markdown to HTML
CodeBlock, CodeInlineCode snippets

All components support Tailwind CSS classes via the className prop when wrapped in a <Tailwind> component.

Both the block builder and code editor produce React Email output under the hood. You can switch between modes, but switching from block builder to code editor is a one-way operation since the block structure cannot be reconstructed from raw code.

SMS Templates

SMS templates have a single body field. Use template variables like {{ user.email }} to include user data.

Design Campaign Text

Messages over 160 characters are split into multiple segments. Lunogram automatically includes opt-out instructions in the first message sent to each user.

Push Notification Templates

Push templates include:

FieldDescription
TitleBold headline text
BodyMain message content
DeeplinkURL to open when tapped
Raw JSONCustom data for your app to process

Design Campaign Push

On this page