Skip to main content

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

MetricValue
Total codebase~14,500 lines
Productive code~7,949 lines
React pages8
API endpoints35+
Database tables7
AI functions12
Migration files5