Ejemplos
El repositorio público de los SDK frontmail-dev/frontmail-js
incluye un ejemplo ejecutable para cada SDK en el directorio
examples/. Cada uno es un
formulario de contacto con errores de validación, el estado de correo retenido y Turnstile: el mismo
flujo que el tutorial del formulario de contacto.
| Ejemplo | Stack | Muestra |
|---|---|---|
examples/vanilla |
HTML puro + @frontmail/browser (CDN) |
sendForm, Turnstile, archivo adjunto, consulta periódica con getStatus |
examples/react |
Vite + React + @frontmail/react |
FrontmailProvider, FrontmailForm, useSendEmail, parámetros tipados |
examples/react-native |
Expo + React Native + @frontmail/react-native |
FrontmailProvider, useSendEmail, TurnstileWebView, limitRate con AsyncStorage |
examples/vue |
Vite + Vue 3 + @frontmail/vue |
plugin, <FrontmailForm>, useSendEmail |
examples/svelte |
Vite + Svelte 5 + @frontmail/svelte |
createFrontmail, use:frontmailForm |
examples/node |
Node.js + @frontmail/node |
send, sendBatch, history, claves de idempotencia |
Ejecutar un ejemplo
Sección titulada «Ejecutar un ejemplo»git clone https://github.com/frontmail-dev/frontmail-js.gitcd frontmail-jscorepack enable # pnpm 10pnpm installpnpm build # compila los SDK que usan los ejemplosecho "VITE_FRONTMAIL_PUBLIC_KEY=pk_…" > examples/react/.env.local # + ID del servicio e ID de la plantillapnpm --filter @frontmail/example-react devEl README de cada ejemplo indica qué parámetros de plantilla espera. La forma más rápida de tener una plantilla que encaje es la plantilla Formulario de contacto de la galería.
Apps nativas: Android (Kotlin), iOS (Swift) y Flutter
Sección titulada «Apps nativas: Android (Kotlin), iOS (Swift) y Flutter»Los SDK nativos están en sus propios repositorios públicos y todavía no tienen proyecto de ejemplo. La página de cada SDK recorre paso a paso el mismo flujo del formulario de contacto (instalación, envío, estado retenido, estado de entrega y Turnstile en un WebView) con código que puedes pegar en tu app:
| SDK | Repositorio | Muestra |
|---|---|---|
Android (Kotlin) – dev.frontmail:frontmail |
frontmail-dev/frontmail-kotlin |
send desde viewModelScope, AcceptedStatus.HELD, getStatus, Turnstile en un WebView |
iOS y plataformas de Apple (Swift) – paquete Frontmail |
frontmail-dev/frontmail-swift |
send con async/await, .held, estado de entrega, Turnstile en un WKWebView (SwiftUI + UIKit) |
Flutter y Dart – frontmail en pub.dev |
frontmail-dev/frontmail-flutter |
send, DeliveryStatus.held, estado de entrega, Turnstile en webview_flutter (un widget de formulario completo) |
Todos necesitan activar Permitir apps móviles y solo
aceptan la clave pública. Las apps multiplataforma pueden usar
@frontmail/react-native y el proyecto examples/react-native de arriba.
Fragmentos desde el panel
Sección titulada «Fragmentos desde el panel»Cada página de plantilla del panel tiene una pestaña Fragmentos que genera código listo para pegar para JS puro, React, Vue, Svelte, Node y cURL, con tus ID y todos los parámetros de la plantilla (incluidos los tipos y valores de ejemplo) ya rellenados.
Notas por framework
Sección titulada «Notas por framework»- Next.js / Nuxt / SvelteKit: envía desde componentes de cliente con la clave pública, o desde
server actions / rutas de API con la clave privada y
@frontmail/node. - Generadores de sitios estáticos (Astro, Hugo, Eleventy, Jekyll): usa la versión del CDN y
sendForm. - WordPress y constructores no-code: pega el fragmento del CDN en un bloque de HTML personalizado.
- Apps móviles: usa los SDK nativos para Android (Kotlin),
iOS (Swift) y Flutter, o
@frontmail/react-native, con la clave pública y activa Permitir apps móviles, o llama a la API REST desde tu backend con una clave privada. Nunca pongas una clave privada en una app.