Next.jsReactE-commerce

resend-ecommerce — Next.js Ecommerce Template

By imnotannamaria

An open-source e-commerce transactional email template set built on React Email and Resend, covering order creation, confirmation, shipping, and delivery, with preview, HTML copy, and test email sending in Next.js.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

3 previews
Desktop homepage1 / 3
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 3

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-01View source

What stands out

A quick read of the recorded project description.

01

Four order lifecycle email templates: creation, confirmation, shipping, delivery

02

Supports adjusting accent color and border radius, and toggling blocks such as delivery date, payment information, and shipment tracking

03

Live email preview as the form is filled out

04

Can copy raw HTML after server-side rendering, or send a test email via the Resend API

05

Written with React Email, paired with Next.js App Router and TypeScript

06

Includes Vitest tests, Biome checks, and Husky pre-commit hooks

Template Details

This repository provides a set of transactional email templates for the e-commerce order flow, written with React Email and sent via Resend. There are four templates, corresponding to order creation (/orders/created), order confirmation (/orders/confirmed), order shipping (/orders/shipped), and order delivery (/orders/delivered), covering the main milestones from order placement to receipt. Each template supports adjusting the accent color (preset palette or custom hex value) and border radius (square, medium, large), and can toggle blocks such as delivery date, payment information, shipment tracking, signature, and social links. The page provides a live preview, showing changes instantly as the form is filled out; you can also copy the raw HTML after server-side rendering, or send a test email via the Resend API. The project uses the Next.js App Router, form validation based on React Hook Form and Zod, API routes using Hono, UI components from Radix UI Themes, icons from Lucide React, styling with Tailwind CSS, and includes Vitest tests, Biome checks and formatting, and pre-commit hooks with Husky and lint-staged. The demo site runs on the author's own Resend API key, so the "send" action can only deliver to the author's email; to send to other inboxes, you need to clone the repository and configure your own RESEND_API_KEY.

Next.jsReactE-commerce

Is it right for your project?

Use Cases

  • Quickly set up a starting template for order notification emails in an e-commerce project
  • Preview and adjust email styles locally, then copy the HTML for use in other sending channels
  • Send a test email via the Resend API to verify how the template displays in a real inbox
  • Use as a reference example project for integrating React Email with Resend

Suitable For

  • E-commerce developers who need order transactional email templates
  • Teams using the Next.js and React Email stack
  • Front-end developers who want to customize email colors, border radius, and content blocks
  • Developers who want to understand the Resend sending flow and React Email rendering approach

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    After cloning the repository, run npm install to install dependencies

  2. 2

    Configure RESEND_API_KEY in .env.local, otherwise test emails cannot be sent

  3. 3

    Run npm run dev to start the development server for preview

  4. 4

    The demo site's send function can only deliver to the author's email; you need your own API key to send to other addresses

  5. 5

    The code is under the MIT license, but third-party assets such as demo images, fonts, and icons must be checked against their respective licenses

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the MIT license in the public repository; the free scope is the code of this version and does not mean external services or third-party assets are free.

Must comply with when using

  • You may use, modify, commercially use, and distribute the code of this version for free.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • The demo site's "send" function uses the author's own Resend API key and can only deliver to the author's email; to send to other inboxes, you must clone the repository and configure your own RESEND_API_KEY.
  • Sending emails depends on the external service Resend; you need to register and configure the RESEND_API_KEY environment variable yourself, otherwise the send function cannot be used.
  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses; you cannot judge based solely on the code's MIT license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Permission is hereby granted, free of charge

Original License Text

This live demo runs on my Resend API key — the **Send** action can only deliver to my address. Clone the repo and set your own `RESEND_API_KEY` to send to any inbox.

Original README

# 3. Add your Resend API key to .env.local RESEND_API_KEY=re_xxxxxxxxx

Original README
https://github.com/imnotannamaria/resend-ecommerce/blob/main/LICENSEhttps://github.com/imnotannamaria/resend-ecommerce/blob/main/README.md

Compiled by DeepSeek based on repository license and README ·2026-10-01. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 85 / 100
Technologies
Next.js · React
Website type
E-commerce
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-04-20
Screenshot last checked
2026-10-01

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Automatically checked against source and license rules; no manual editorial review.

Inspect the recorded source material

SHA-256: 0f4ea21bb658d09969c3e77af92f0084aa4dbed7ea0c5e322572f0484225f380

2026-10-01T01:34:32.159Z

Source file / repository
# Resend Ecommerce

Open-source transactional email templates for e-commerce, built with [React Email](https://react.email) and [Resend](https://resend.com). Customize, preview, and send in minutes.

## Email templates

Four templates covering the full order lifecycle:

| Template | Route | Description |
|---|---|---|
| Order Created | `/orders/created` | Sent immediately after purchase. Confirms order details, product summary, and estimated delivery. |
| Order Confirmed | `/orders/confirmed` | Sent when the merchant confirms the order is being prepared and payment is verified. |
| Order Shipped | `/orders/shipped` | Dispatched when the package leaves the warehouse. Includes tracking information. |
| Order Delivered | `/orders/delivered` | Final notification confirming the package has been delivered to the customer. |

Each template supports:
- **Accent color** — preset palette or custom hex
- **Border radius** — sharp, medium, or large
- **Toggleable sections** — delivery date, payment details, tracking info, sign-off, social links
- **Live preview** — see changes in real time as you fill the form
- **Copy HTML** — renders server-side and copies raw HTML to clipboard
- **Send** — sends a live test email via the Resend API

## Getting started

```bash
# 1. Clone the repo
git clone https://github.com/imnotannamaria/resend-ecommerce.git

# 2. Install dependencies
npm install

# 3. Add your Resend API key to .env.local
RESEND_API_KEY=re_xxxxxxxxx

# 4. Start the dev server
npm run dev
```

## Tech stack

- [Next.js 15](https://nextjs.org) — App Router
- [React 19](https://react.dev) — UI library
- [TypeScript](https://www.typescriptlang.org) — Type safety
- [React Email](https://react.email) — Email rendering
- [Resend](https://resend.com) — Email delivery
- [Radix UI Themes](https://www.radix-ui.com/themes) — UI components
- [Lucide React](https://lucide.dev) — Icons
- [Geist](https://vercel.com/font) — Font
- [Tailwind CSS v4](https://tailwindcss.com) — Styling
- [React Hook Form](https://react-hook-form.com) + [Zod](https://zod.dev) — Form validation
- [Hono](https://hono.dev) — API routes
- [Sonner](https://sonner.emilkowal.ski) — Toast notifications
- [Vitest](https://vitest.dev) — Tests
- [Biome](https://biomejs.dev) — Linting and formatting
- [Husky](https://typicode.github.io/husky) + [lint-staged](https://github.com/lint-staged/lint-staged) — Pre-commit hooks

## Development

```bash
npm run dev        # Start dev server
npm run test       # Run tests in watch mode
npm run test:run   # Run tests once
npm run lint       # Lint with Biome
npm run format     # Format with Biome
npm run check      # Lint + format
```

## Project structure

```
app/
├── emails/           # Email templates (order-created, confirmed, shipped, delivered)
├── orders/           # Preview pages for each email template
├── components/       # Shared UI components (form fields, design panel, etc.)
├── api/              # API routes for rendering HTML and sending emails
└── __tests__/        # Unit and integration tests
```

## Pre-commit hooks

Husky runs on every commit:
1. **lint-staged** — Biome check on staged files
2. **vitest run** — full test suite

## Demo

> This live demo runs on my Resend API key — the **Send** action can only deliver to my address. Clone the repo and set your own `RESEND_API_KEY` to send to any inbox.

---

Developed by [Anna Maria](https://github.com/imnotannamaria)
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.