Youtube To Ebook banner
zarazhangrui zarazhangrui

Youtube To Ebook

Communication community

Description

Claude skill for turning YouTube transcripts from your favorite channels into EPUB ebooks, delivered to your email inbox regularly

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

YouTube to Ebook

Transform YouTube videos from your favorite channels into beautifully formatted EPUB ebooks.

Features

  • Fetches latest videos from YouTube channels (automatically filters out Shorts)
  • Extracts transcripts from videos
  • Uses Claude AI to transform transcripts into polished magazine-style articles
  • Generates EPUB ebooks readable on any device
  • Optional: Email delivery with ebook attachment
  • Optional: Web dashboard for easy management

Quick Start

  1. **Clone and install:**

    git clone https://github.com/YOUR_USERNAME/youtube-to-ebook.git
    cd youtube-to-ebook
    pip install -r requirements.txt
  2. **Set up API keys:**

    cp .env.example .env
    # Edit .env with your keys
  3. **Add your channels:**

    # Edit channels.txt with YouTube channel handles
    @mkbhd
    @veritasium
    @3blue1brown
  4. **Generate your ebook:**

    python main.py

Getting API Keys

YouTube Data API (Free)

  1. Go to Google Cloud Console
  2. Create a new project
  3. Enable "YouTube Data API v3"
  4. Create credentials → API Key
  5. Copy to .env

Anthropic API

  1. Go to Anthropic Console
  2. Create an API key
  3. Copy to .env

Web Dashboard

Launch a friendly web interface:

pip install streamlit
python -m streamlit run dashboard.py

Automation (Mac)

Run automatically every week:

# Copy the plist to LaunchAgents
cp com.youtube.newsletter.plist ~/Library/LaunchAgents/

# Load it
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.youtube.newsletter.plist

Troubleshooting

"ModuleNotFoundError" when running automation

Your Mac may have multiple Python installations. The automation scripts use `python3`, but your packages might be installed in a different Python.

**Fix:** Find your Python path and update the scripts:

# Find where your Python is
which python3

# Update