Open-source Python framework for building real-time voice and multimodal AI agents, with pluggable speech, LLM, and transport services.
souzatharsis/podcastfy
Open-source Python package that turns websites, PDFs, images, YouTube videos or topics into multilingual audio podcast conversations using GenAI.
Open-source alternative to:NotebookLM
- Stars
- 6,695
- Forks
- 778
- Open issues
- 124
- Last commit
- 6 months ago
What is it?
Podcastfy is a Python package that generates podcast-style audio conversations from multimodal inputs such as websites, PDFs, images, YouTube videos, and user-provided topics. It is positioned as an open-source, programmatic alternative to NotebookLM's podcast feature, aimed at developers who want to script, customize, and scale podcast generation rather than work through a closed UI.
It can produce both short episodes (about 2-5 minutes) and longform podcasts (30+ minutes). Transcripts are generated with LLMs from providers such as OpenAI, Anthropic, and Google, or with local LLMs, and the transcripts are then voiced with text-to-speech services including OpenAI, Google, ElevenLabs, and Microsoft Edge.
Podcastfy can be used from Python, a command-line interface, or a containerized FastAPI service. Its conversation format, style, voices, and output language are configurable.
Key features
- 01Builds podcast audio from websites, PDFs, images, YouTube videos, and topics.
- 02Generates short episodes and longform podcasts.
- 03Supports transcript generation with many LLM providers, including local models.
- 04Offers text-to-speech via OpenAI, Google, ElevenLabs, and Microsoft Edge.
- 05Provides multilingual output and customizable conversation style and voices.
- 06Exposes Python, CLI, and FastAPI interfaces for scripted workflows.
Use cases
- Turning blog posts or articles into audio episodes for listeners.
- Converting lecture notes or slides into listenable study material.
- Creating audio summaries of research papers and technical documents.
- Batch-generating podcasts from a pipeline of URLs or documents.
Quick start
- 1
Install Python 3.11 or higher and ffmpeg for audio processing
$ pip install ffmpeg - 2
Install podcastfy from PyPI
$ pip install podcastfy - 3
Set up your API keys (see the configuration guide)
- 4
Generate a podcast from URLs using Python
from podcastfy.client import generate_podcast audio_file = generate_podcast(urls=["<url1>", "<url2>"])
Things to know
- Requires API keys for LLM and text-to-speech services, which may incur costs.
- The README's FastAPI support is marked as beta and only for URLs.
Topics
FAQ
- What is podcastfy?
- Open-source Python package that turns websites, PDFs, images, YouTube videos or topics into multilingual audio podcast conversations using GenAI. Podcastfy is a Python package that generates podcast-style audio conversations from multimodal inputs such as websites, PDFs, images, YouTube videos, and user-provided topics. It is positioned as an open-source, programmatic alternative to NotebookLM's podcast feature, aimed at developers who want to script, customize, and scale podcast generation rather than work through a closed UI.
- Is podcastfy free to use? What license does it have?
- podcastfy is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is podcastfy still maintained?
- Updated within 6 months. The last commit to podcastfy was on May 4, 2026.
- What can I use podcastfy for?
- Turning blog posts or articles into audio episodes for listeners. Converting lecture notes or slides into listenable study material. Creating audio summaries of research papers and technical documents. Batch-generating podcasts from a pipeline of URLs or documents.
- How do I install podcastfy?
- Install Python 3.11 or higher and ffmpeg for audio processing: $ pip install ffmpeg Install podcastfy from PyPI: $ pip install podcastfy Set up your API keys (see the configuration guide) Generate a podcast from URLs using Python: from podcastfy.client import generate_podcast audio_file = generate_podcast(urls=["<url1>", "<url2>"])
- Where can I get podcastfy?
- The source code and installation instructions are on GitHub: https://github.com/souzatharsis/podcastfy
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Turns a topic or keyword into a finished short video, handling script, voiceover, footage, subtitles and music automatically.
A self-hosted, OpenAI-compatible AI engine that runs LLMs, vision, voice, image and video models on any hardware, including CPU-only machines.
A lightweight knowledge-graph RAG framework and server that indexes documents into entities and relations for retrieval-augmented LLM answers.
Code-first Python framework from Google for building, evaluating, and deploying AI agents, optimized for Gemini but model-agnostic.
Python AI SDK for building typed agents that run across models, web frontends, CLI, voice, and durable background workflows.