Enterprise client sentiment analysis platform for Fathom video transcripts - AI-powered knowledge gap detection, training recommendations, and actionable insights
Fathom Insights transforms your client call transcripts into actionable business intelligence. Built specifically for teams using Fathom for video conferencing, this platform automatically analyzes conversations to identify client frustrations, knowledge gaps, training needs, and opportunities for process improvement.
Comprehensive Analysis
- Sentiment Analysis - Track client satisfaction across all interactions
- Knowledge Gap Detection - Identify missing documentation and training materials
- Training Recommendations - Discover what your team needs to learn
- Positive Feedback Tracking - Capture testimonials and success stories
- Client Frustration Analysis - Pinpoint pain points before they escalate
High-Volume Processing
- Automatic bulk import - One-click import of all Fathom calls
- Process 100+ transcripts per week
- Batch import and analysis
- Individual call deep-dives
- Automated scheduling (daily/weekly/monthly)
- Real-time webhook integration
Actionable Insights
- Priority-ranked issues (critical → low)
- Trend analysis over time
- Severity-based alerting
- Historical tracking and comparison
- Executive summary reports
Multiple Export Formats
- PDF reports
- Markdown documentation
- CSV data exports
- Google Docs integration
- Frontend: React 19, Tailwind CSS 4, shadcn/ui
- Backend: Express, tRPC 11, Node.js
- Database: MySQL with Drizzle ORM
- AI: Google Gemini 1.5 Flash
- Integrations: Fathom API, GitHub
- Node.js 22+ and pnpm
- MySQL database
- Fathom API key
- Google Gemini API key
# Clone the repository
git clone https://github.com/roALAB1/fathom-insights.git
cd fathom-insights
# Install dependencies
pnpm install
# Set up environment variables
cp .env.example .env
# Edit .env with your API keys
# Run database migrations
pnpm db:push
# Start development server
pnpm devThe application will be available at http://localhost:3000
# Database
DATABASE_URL=mysql://user:password@host:port/database
# Fathom Integration
FATHOM_API_KEY=your_fathom_api_key
FATHOM_WEBHOOK_SECRET=your_webhook_secret
# AI Analysis
GEMINI_API_KEY=your_gemini_api_key
# GitHub Integration (Optional)
GITHUB_TOKEN=your_github_token
GITHUB_USERNAME=your_usernameFathom API Key
- Log in to your Fathom account
- Navigate to Settings → Integrations
- Generate a new API key
- Copy the key and webhook secret
Google Gemini API Key
- Visit Google AI Studio
- Sign in with your Google account
- Click "Create API Key"
- Copy the generated key
Method 1: Automatic Bulk Import ⭐ Recommended
- Navigate to the Import page
- Click "Import All Fathom Calls"
- All your Fathom transcripts are automatically fetched and imported
- Existing transcripts are automatically skipped
Features:
- One-click import of ALL Fathom calls
- No manual URL copying required
- Smart pagination handles hundreds of calls
- Optional max meetings limit for testing
- Detailed progress tracking and statistics
Method 2: Manual URL Import
- Navigate to the Import page
- Paste Fathom share URLs (one per line)
- Click "Import Transcripts"
Method 3: Batch Import
- Click "Import Transcripts" on the dashboard
- Select multiple Fathom links
- Process in bulk
Method 4: Webhook Integration
- Configure webhook in Fathom settings
- Point to:
https://your-domain.com/api/webhooks/fathom - Transcripts auto-import after each call
Individual Analysis
- Go to Transcripts page
- Click "Analyze" on any transcript
- View results in Analysis Detail page
Batch Analysis
- Select multiple transcripts
- Click "Analyze Selected"
- Monitor progress in Batch Jobs
Automated Analysis
- Navigate to Settings → Schedules
- Create new schedule (daily/weekly/monthly)
- System automatically processes new transcripts
Dashboard - High-level metrics and trends
Insights Page - Detailed knowledge gaps and training needs
Analysis Detail - Deep dive into individual call analysis
Alerts - Critical issues requiring immediate attention
The platform uses 8 core tables:
- transcripts - Stores call metadata and transcript text
- analyses - AI analysis results for each transcript
- insights - Actionable insights (knowledge gaps, training needs, etc.)
- metrics - Aggregated metrics by time period
- alerts - High-priority notifications
- schedules - Automated analysis jobs
- exports - Generated reports
- batch_jobs - Bulk processing tasks
Built with tRPC for end-to-end type safety:
// Example: Fetch dashboard stats
const { data } = trpc.dashboard.stats.useQuery();
// Example: Analyze transcript
const analyze = trpc.analysis.analyze.useMutation();
await analyze.mutateAsync({ transcriptId: 123 });- Transcript Ingestion - Fetch from Fathom API
- Preprocessing - Clean and structure text
- AI Analysis - Send to Google Gemini
- Extraction - Parse questions, sentiment, insights
- Scoring - Calculate priority and severity
- Storage - Save to database
- Alerting - Trigger notifications if needed
fathom-insights/
├── client/ # React frontend
│ ├── src/
│ │ ├── pages/ # Page components
│ │ ├── components/ # Reusable UI components
│ │ └── lib/ # Utilities and tRPC client
├── server/ # Express backend
│ ├── routers.ts # tRPC API routes
│ ├── db.ts # Database queries
│ ├── fathom-client.ts # Fathom API integration
│ ├── gemini-client.ts # AI analysis
│ └── github-client.ts # GitHub integration
├── drizzle/ # Database schema and migrations
└── shared/ # Shared types and constants
# Run all tests
pnpm test
# Run specific test file
pnpm test fathom.test.ts
# Watch mode
pnpm test --watch# Build frontend and backend
pnpm build
# Start production server
pnpm start- Set up MySQL database
- Configure environment variables
- Run migrations:
pnpm db:push - Build application:
pnpm build - Start server:
pnpm start
- Frontend: Vercel, Netlify, or Cloudflare Pages
- Backend: Railway, Render, or DigitalOcean
- Database: PlanetScale, Railway, or AWS RDS
- Email notifications for alerts
- Slack integration
- Custom AI prompts
- Multi-language support
- Advanced trend forecasting
- Team collaboration features
- Mobile app
Contributions are welcome! Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: Full documentation
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- Built with Manus - AI-powered development platform
- Powered by Google Gemini for AI analysis
- Integrated with Fathom for video transcripts
Made with ❤️ for teams who want to turn client feedback into action