Tech Stack
A complete breakdown of every technology used in the Kinetic Email platform.
Frontend
| Technology | Purpose | Version |
|---|---|---|
| React | UI framework | 19.x |
| TypeScript | Type safety | 5.x |
| Vite | Build tool & dev server | 6.x |
| React Router | Client-side routing | v7 |
| Tailwind CSS | Utility-first CSS framework | 3.x |
| PostCSS | CSS processing | — |
Backend (Serverless)
| Technology | Purpose |
|---|---|
| Vercel Functions | Serverless API endpoints (api/ directory) |
| Node.js | Runtime for serverless functions (ESM — relative imports require .js extensions) |
Database & Auth
| Technology | Purpose |
|---|---|
| Supabase | PostgreSQL database, authentication, Row-Level Security on all tables |
| Supabase Auth | PKCE flow: magic link, Google OAuth, email/password |
| Supabase RPC | Server-side function calls (spend_tokens, check_token_balance, etc.) |
AI & Machine Learning
| Technology | Purpose |
|---|---|
Anthropic Claude Sonnet 4.6 (claude-sonnet-4-6) | Email HTML generation, auto-tagging, eval judging |
Anthropic Claude Haiku 4.5 (claude-haiku-4-5-20251001) | Copy generation, blueprints, RAG re-ranking, continuity checks (fast, cheap) |
| OpenAI Embeddings | Vector embeddings for RAG (text-embedding-3-large) |
| Pinecone | Vector database for RAG retrieval (v2 index; full example HTML lives in Supabase rag_documents) |
Email Delivery
| Technology | Purpose |
|---|---|
| Mailgun | Sole email delivery provider — all sends, including AMP4Email via raw MIME; HMAC-verified webhooks |
Real-Time
| Technology | Purpose |
|---|---|
| Convex | Real-time database for tracking pixels and interaction events |
Hosting & Infrastructure
| Technology | Purpose |
|---|---|
| Vercel | Hosting, CDN, serverless functions, analytics |
| Vercel Analytics | Page-level analytics |
| Sentry | Error tracking and monitoring |
| Telegram | Server-side admin alerts (signups, errors) via bot API |
Testing
| Technology | Purpose |
|---|---|
| Vitest | Test runner |
| happy-dom | DOM environment for tests (faster than jsdom) |
| Playwright | End-to-end tests (e2e/) |
Build & Deploy
| Tool | Purpose |
|---|---|
scripts/prerender.mjs | Pre-renders static HTML for SEO |
scripts/generate-sitemap.mjs | Generates sitemap.xml at build time |
| Convex CLI | Deploys Convex functions before Vite build |
Build Pipeline
npx convex deploy \
--cmd 'npm run build:vite && npm run build:prerender && npm run build:sitemap' \
--cmd-url-env-var-name VITE_CONVEX_URL --codegen enable -y
This runs in sequence:
- Deploy Convex functions
- Build the Vite app (
dist/) - Pre-render pages into
dist/<route>/index.htmlwith SEO meta tags - Generate
dist/sitemap.xml