B2B chemical marketplace platform with integrated email campaign management.
- Install dependencies:
npm install- Set up environment variables:
cp .env.example .envRequired environment variables:
NEXT_PUBLIC_SUPABASE_URL=
SUPABASE_SERVICE_ROLE_KEY=
SMARTLEAD_API_KEY=
BREVO_API_KEY=
- Run database migrations:
cd supabase
supabase db push- Start development server:
npm run dev- Project Documentation - Complete architecture, setup, and development guide
- Smartlead API Reference - Full API documentation
- Tech Stack - Technology choices and stack details
- Design System - UI/UX design guidelines
pitchivo/
├── apps/
│ └── web/ # Main Next.js application
│ ├── app/ # Next.js App Router
│ ├── components/ # React components
│ └── lib/ # Utilities and clients
├── packages/
│ └── ui/ # Shared UI components
└── supabase/
└── migrations/ # Database migrations
- Frontend: Next.js 14+, React, Tailwind CSS, shadcn/ui
- Backend: Next.js API Routes, Supabase (PostgreSQL)
- Email: Smartlead (campaigns), Brevo (transactional)
- Monorepo: Turborepo
- Import from GitHub → choose
pitchivo - Set Root Directory:
apps/web - Add environment variables
- Deploy ✅
After deployment, configure Smartlead webhook:
- Go to Smartlead → Settings → Webhooks
- Add webhook URL:
https://yourdomain.com/api/webhooks/smartlead - Select all event types
- Save
npm run dev- Start development servernpm run build- Build for productionnpm run lint- Run linternpm run clean- Clean build artifacts
- Campaign Management - Create and manage email campaigns
- Smartlead Integration - Full bi-directional sync with Smartlead
- Lead Management - Track and manage leads
- Analytics Dashboard - Real-time campaign metrics
- Multi-tenant Support - Organization-based attribution