Skip to content

An automated system that transforms newsletters into a weekly podcast. Processes HTML newsletters, analyzes content with AI, generates a script, and creates high-quality audio using ElevenLabs TTS.

License

Notifications You must be signed in to change notification settings

franloza/inbox-ai-podcast

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Inbox AI Podcast

An automated system that transforms unread newsletters into a weekly podcast. This project processes HTML newsletters, analyzes their content using AI, generates a podcast script, and creates an audio file ready for listening.

Inbox AI Podcast Thumbnail

Features

  • Converts HTML newsletters to structured JSON data
  • Uses AI to review and score articles for podcast relevance
  • Generates a natural-sounding podcast script
  • Creates high-quality audio using ElevenLabs TTS
  • Modular workflow allowing review and iteration at each step

Prerequisites

  • Python 3.8 or higher
  • uv (Python package installer and resolver)
  • Google API credentials (for YouTube upload)
  • OpenRouter.ai API key
  • ElevenLabs API key

Setup

  1. Clone the repository:
git clone https://github.com/franloza/inbox-ai-podcast.git
cd inbox-ai-podcast
  1. Install uv if you haven't already:
curl -LsSf https://astral.sh/uv/install.sh | sh
  1. Set up the project:
make setup
  1. Set up your environment variables:
cp .env.example .env
# Edit .env with your API keys and configuration

Usage

The project uses a Makefile to manage the workflow. Here are the main commands:

  • make setup: Set up the Python virtual environment using uv and install dependencies
  • make phase1: Process HTML newsletters into JSON
  • make phase2: Review and score articles using AI
  • make phase3: Generate the podcast script
  • make phase4: Create the audio file
  • make all: Run the complete workflow

To check the results at any stage:

  • make check-articles: View the processed articles
  • make check-reviewed: View the AI-reviewed articles
  • make check-script: View the generated podcast script

Workflow

  1. Phase 1: HTML Processing

    • Converts HTML newsletters to clean, structured JSON
    • Extracts titles, authors, and content
  2. Phase 2: AI Review

    • Scores articles for podcast relevance
    • Generates summaries and key talking points
  3. Phase 3: Script Generation

    • Creates a natural-sounding podcast script
    • Organizes content into a 20-minute format
  4. Phase 4: Audio Production

    • Converts the script to high-quality audio
    • Outputs an MP3 file ready for distribution

Contributing

Feel free to submit issues and enhancement requests!

License

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

About

An automated system that transforms newsletters into a weekly podcast. Processes HTML newsletters, analyzes content with AI, generates a script, and creates high-quality audio using ElevenLabs TTS.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published