A Vue port of React Email. High-quality, unstyled components for creating emails using Vue and TypeScript.
It reduces the pain of coding responsive emails with dark mode support and takes care of inconsistencies between Gmail, Outlook, and other email clients.
Git hooks are managed with mise.
mise must be installed. Run
mise installto automatically install bun and other required tools.
mise trust
mise install
mise run setupmise run setup installs dependencies via bun install, then sets up a commit-msg hook so commitlint runs automatically on each commit.
Vue ports of React Email components.
- Body
- Button
- CodeBlock
- CodeInline
- Column
- Container
- Font
- Head
- Heading
- Hr (Divider)
- Html
- Img (Image)
- Link
- Markdown
- Preview
- Row
- Section
- Tailwind
- Text (Paragraph)
vue-email/
βββ vendor/
β βββ react-email/ # React Email source (git submodule)
βββ package.json
βββ .mise.toml
βββ commitlint.config.mjs
- Run Claude Code in the project directory:
claude- Run the setup skill to configure Claude Code for this project:
/claude-code-setup:claude-code-setup
- Initialize the Please workspace:
/please:setup
- Set up code review tools:
/review:setup
| Document | Description |
|---|---|
| Product Guide | Vision, target users, core features, and constraints |
| Product Guidelines | API design principles, component design, and code style |
| Tech Stack | Runtime, frameworks, build tools, and dev commands |
| Workflow | TDD lifecycle, quality gates, and branch strategy |
| Tracks Index | Active and completed implementation tracks |
| Workspace Index | Full directory map of the .please/ workspace |
- React Email - Original project
- engineering-standards
- claude-code-plugins
- commitlint