Skip to main content

Quick Start

Get the Kinetic Email platform running locally in under 5 minutes.

Prerequisites

  • Node.js 18+ and npm
  • Supabase account and project (for auth + database)
  • Convex account (for real-time tracking)
  • Anthropic API key (for AI email generation)

1. Clone and Install

git clone <repository-url>
cd kinetic-email
npm install

2. Environment Variables

Create a .env file in the project root. See Environment Variables for the full list.

Required minimum:

# Supabase
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-key
SUPABASE_URL=https://your-project.supabase.co
SUPABASE_SERVICE_ROLE_KEY=your-service-role-key
SUPABASE_ANON_KEY=your-anon-key

# Convex
VITE_CONVEX_URL=https://your-project.convex.cloud

# Anthropic (AI generation)
CLAUDE_API_KEY=your-anthropic-key

3. Database Setup

Run the migration scripts in the database/ directory against your Supabase project. The files are numbered and should be run in order:

database/01-schema.sql
database/02-auth.sql
...
database/59-token-system.sql
database/60-security.sql

4. Start Development Server

npm run dev

The app will be available at http://localhost:5173.

5. Run Tests

npm test

Project Structure at a Glance

kinetic-email/
├── api/ # Vercel serverless functions
│ ├── admin/ # Admin-only endpoints
│ ├── _auth.ts # Auth middleware
│ ├── generate.js # AI email generation (RAG)
│ ├── send-email.ts # Send via Resend
│ └── track-pixel.ts # Interaction tracking
├── src/
│ ├── pages/ # React page components
│ ├── components/ # Reusable UI components
│ ├── contexts/ # React Context providers
│ ├── hooks/ # Custom React hooks
│ ├── lib/ # Utility libraries
│ └── seo/ # SEO configuration
├── convex/ # Real-time tracking backend
├── database/ # SQL migrations
├── tests/ # Vitest test suite
└── scripts/ # Build scripts (prerender, sitemap)

Next Steps