> ## Documentation Index
> Fetch the complete documentation index at: https://kindling.birklid.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Podcastfy

> Open-source Python package for programmatic podcast generation from any content — text, PDFs, images, YouTube, with full LLM and TTS provider control.

<div style={{display: "flex", gap: "8px", marginBottom: "1.5rem", flexWrap: "wrap"}}>
  <Badge>Open Source</Badge>
  <Badge color="#F97316">Applications Layer</Badge>
</div>

# Podcastfy

**Open-source NotebookLM alternative — convert any content into AI-generated podcast conversations with full control over LLMs, voices, and output format.**

<Frame>
  <img src="https://mintcdn.com/tumbleweedlabs/QT0SlrwbzlJBSMcS/images/og-podcastfy.png?fit=max&auto=format&n=QT0SlrwbzlJBSMcS&q=85&s=33497de0fee2fb8f574b8bfd46c33cae" alt="Podcastfy GitHub" width="1200" height="600" data-path="images/og-podcastfy.png" />
</Frame>

<CardGroup cols={4}>
  <Card title="Type" icon="code-branch">Open Source (Apache 2.0)</Card>
  <Card title="Stack Layer" icon="browsers">Applications</Card>
  <Card title="Language" icon="code">Python</Card>
  <Card title="Stars" icon="star">6.3k+</Card>
</CardGroup>

## What it is

Podcastfy is an open-source Python package that converts multimodal content — text documents, images, websites, PDFs, YouTube videos — into engaging AI-generated audio conversations. It functions as a fully programmable, open alternative to Google's NotebookLM podcast feature, giving developers control over every aspect: LLM backend (OpenAI, Anthropic, Google), TTS provider (including ElevenLabs for premium voice quality), conversation style, speaker voices, transcript structure, and episode length.

The programmable nature makes it a natural fit for content pipelines — automatically generating podcast summaries of research papers, accessibility audio versions of documentation, or newsletter-style audio briefings. A CLI is included for quick one-off conversions without writing Python code.

<Tip>
  **Use this when** you need to automate podcast generation at scale as part of a content pipeline, or when you want the flexibility to swap LLM and TTS providers rather than being locked into a hosted product's defaults.
</Tip>

## Get started

<CardGroup cols={2}>
  <Card title="GitHub ↗" icon="github" href="https://github.com/souzatharsis/podcastfy">
    Source, pip install, and usage examples.
  </Card>
</CardGroup>

## Related tools

<CardGroup cols={2}>
  <Card title="SparkPod" icon="globe" href="/library/audio-and-speech/sparkpod">
    Hosted no-code equivalent with API access for automation.
  </Card>

  <Card title="ElevenLabs" icon="globe" href="/library/audio-and-speech/elevenlabs">
    Premium TTS provider often used as Podcastfy's voice backend.
  </Card>
</CardGroup>
