Current State
This page tracks what's been built and is working in the Tap platform as of February 2026.
Campaign Lifecycle
Tap supports the full campaign lifecycle from creation to archival. Here's the state machine:
What's Built
Authentication & User Management
- Email/password sign-up and login (Supabase Auth)
- Protected routes with JWT validation
- Session persistence across browser refreshes
Organizations & Multi-Tenancy
- Organization creation and management
- Role-based access: owner, admin, member
- Shared campaign visibility within organizations
- Row-Level Security (RLS) for data isolation
Campaign Creation
- AI-powered mission wizard (topic extraction, bias detection, question options)
- Mission summary generation for invitation emails
- Campaign configuration (audience type, anonymity, max follow-ups)
- CSV participant upload (name, email)
Campaign Lifecycle
- Launch (sends invitations to all participants)
- Pause / Resume
- Complete (triggers analysis)
- Archive / Unarchive
- Clone (duplicate campaign settings)
- Delete
Participant Experience
- Token-based access (no login required)
- Chat-like interface
- AI-generated follow-up questions (up to configurable max)
- Automatic conversation completion
- Anonymous mode support
Email System
- Styled HTML invitation emails (glassmorphism design)
- Automated reminder emails (hourly cron check)
- Bulk invitation sending
- Custom sender address (hello@tap.yelin.io via Resend)
AI Analysis
- Sentiment analysis (positive/neutral/negative distribution)
- Theme extraction (up to 10 themes with frequency)
- Executive summary with recommendations
- Conversation grouping by theme
- Natural language Q&A over responses
- Analysis caching (results stored in database)
Campaign Monitoring
- Real-time response progress tracking
- Participant status overview
- Individual conversation transcript viewing
- Response count and completion rate metrics
Infrastructure
- Frontend deployed on Vercel
- Backend deployed on Render
- Database on Supabase Cloud
- Email delivery via Resend
Technical Metrics
| Metric | Value |
|---|---|
| Total codebase | ~14,500 lines |
| Productive code | ~7,949 lines |
| React pages | 8 |
| API endpoints | 35+ |
| Database tables | 7 |
| AI functions | 12 |
| Migration files | 5 |