Skip to content

Enterprise client sentiment analysis platform for Fathom video transcripts - AI-powered knowledge gap detection, training recommendations, and actionable insights

License

Notifications You must be signed in to change notification settings

roALAB1/fathom-insights

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fathom Insights

Enterprise client sentiment analysis platform for Fathom video transcripts - AI-powered knowledge gap detection, training recommendations, and actionable insights

License: MIT TypeScript React

Overview

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.

Key Features

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

Tech Stack

  • 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

Quick Start

Prerequisites

  • Node.js 22+ and pnpm
  • MySQL database
  • Fathom API key
  • Google Gemini API key

Installation

# 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 dev

The application will be available at http://localhost:3000

Configuration

Required Environment Variables

# 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_username

Getting API Keys

Fathom API Key

  1. Log in to your Fathom account
  2. Navigate to Settings → Integrations
  3. Generate a new API key
  4. Copy the key and webhook secret

Google Gemini API Key

  1. Visit Google AI Studio
  2. Sign in with your Google account
  3. Click "Create API Key"
  4. Copy the generated key

Usage

Importing Transcripts

Method 1: Automatic Bulk ImportRecommended

  1. Navigate to the Import page
  2. Click "Import All Fathom Calls"
  3. All your Fathom transcripts are automatically fetched and imported
  4. 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

  1. Navigate to the Import page
  2. Paste Fathom share URLs (one per line)
  3. Click "Import Transcripts"

Method 3: Batch Import

  1. Click "Import Transcripts" on the dashboard
  2. Select multiple Fathom links
  3. Process in bulk

Method 4: Webhook Integration

  1. Configure webhook in Fathom settings
  2. Point to: https://your-domain.com/api/webhooks/fathom
  3. Transcripts auto-import after each call

Running Analysis

Individual Analysis

  1. Go to Transcripts page
  2. Click "Analyze" on any transcript
  3. View results in Analysis Detail page

Batch Analysis

  1. Select multiple transcripts
  2. Click "Analyze Selected"
  3. Monitor progress in Batch Jobs

Automated Analysis

  1. Navigate to Settings → Schedules
  2. Create new schedule (daily/weekly/monthly)
  3. System automatically processes new transcripts

Viewing Insights

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

Architecture

Database Schema

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

API Structure

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 });

AI Analysis Pipeline

  1. Transcript Ingestion - Fetch from Fathom API
  2. Preprocessing - Clean and structure text
  3. AI Analysis - Send to Google Gemini
  4. Extraction - Parse questions, sentiment, insights
  5. Scoring - Calculate priority and severity
  6. Storage - Save to database
  7. Alerting - Trigger notifications if needed

Development

Project Structure

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

Running Tests

# Run all tests
pnpm test

# Run specific test file
pnpm test fathom.test.ts

# Watch mode
pnpm test --watch

Building for Production

# Build frontend and backend
pnpm build

# Start production server
pnpm start

Deployment

Environment Setup

  1. Set up MySQL database
  2. Configure environment variables
  3. Run migrations: pnpm db:push
  4. Build application: pnpm build
  5. Start server: pnpm start

Recommended Hosting

  • Frontend: Vercel, Netlify, or Cloudflare Pages
  • Backend: Railway, Render, or DigitalOcean
  • Database: PlanetScale, Railway, or AWS RDS

Roadmap

  • Email notifications for alerts
  • Slack integration
  • Custom AI prompts
  • Multi-language support
  • Advanced trend forecasting
  • Team collaboration features
  • Mobile app

Contributing

Contributions are welcome! Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Acknowledgments

  • 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

About

Enterprise client sentiment analysis platform for Fathom video transcripts - AI-powered knowledge gap detection, training recommendations, and actionable insights

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages