Skip to content

arushs/podcast-repurposer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎙️ Podcast Repurposer

Turn one podcast episode into a full week of content — powered by GPT-4o.

Python Streamlit OpenAI License: MIT

One transcript. Five platforms. Zero manual writing. Paste a podcast transcript and get a polished blog post, Twitter thread, LinkedIn post, email newsletter, and YouTube description — each crafted with platform-specific best practices.


✨ What You Get

Output Details
📝 SEO Blog Post ~1,500 words with H2/H3 structure, guest quotes, meta description, and CTA
🐦 Twitter/X Thread 10-tweet thread with scroll-stopping hook and engagement tactics
💼 LinkedIn Post Pattern-interrupt opener, 150–300 words, hashtags, engagement question
📧 Email Newsletter 3 key lessons with action items, warm conversational tone
🎬 YouTube Description Timestamps, tags, guest bio, SEO keywords, subscribe CTA

Each piece uses names, quotes, and specific details from your transcript — not generic filler.


🏗️ Architecture

┌──────────────────────────────────────────────────────┐
│                    Streamlit UI                       │
│                                                      │
│  ┌────────────────────────────────────────────────┐  │
│  │  Input: Paste │ Upload .txt │ Sample Transcript│  │
│  └───────────────────────┬────────────────────────┘  │
│                          ▼                            │
│              ┌─────────────────────┐                  │
│              │   Content Pipeline  │                  │
│              │                     │                  │
│              │  For each format:   │                  │
│              │  ┌───────────────┐  │                  │
│              │  │ System Prompt │  │                  │
│              │  │ + Format-     │  │                  │
│              │  │   Specific    │──┼──► OpenAI GPT-4o │
│              │  │   Template    │  │                  │
│              │  └───────────────┘  │                  │
│              └─────────┬───────────┘                  │
│                        ▼                              │
│         ┌──────────────────────────────┐              │
│         │   Results Dashboard          │              │
│         │                              │              │
│         │  📊 Word counts per format   │              │
│         │  📑 Tabbed content viewer    │              │
│         │  📦 Download all as ZIP      │              │
│         │  📋 Individual downloads     │              │
│         └──────────────────────────────┘              │
└──────────────────────────────────────────────────────┘

🚀 Quick Start

git clone https://github.com/arushs/podcast-repurposer.git
cd podcast-repurposer
pip install -r requirements.txt
streamlit run app.py
  1. Enter your OpenAI API key in the sidebar
  2. Paste a transcript, upload a .txt file, or use the built-in sample
  3. Click ✨ Generate All Content
  4. Download individual files or grab everything as a ZIP

A sample transcript is included so you can demo it instantly — no podcast required.


🧠 How The Prompts Work

Each content type has a dedicated prompt template in prompts.py with platform-specific constraints:

  • Blog — enforces H2/H3 structure, 3–5 direct quotes, meta description
  • Twitter — 280-char limit per tweet, numbered threading, hook-first
  • LinkedIn — short paragraphs, pattern-interrupt opener, hashtags
  • Newsletter — lesson + explanation + action item format
  • YouTube — timestamps, tags, guest bio, SEO keywords

All prompts share a system prompt that emphasizes using specific details (names, quotes, numbers) from the transcript.


📁 Project Structure

podcast-repurposer/
├── app.py                  # Main Streamlit application
├── prompts.py              # GPT-4o prompt templates per content type
├── sample_transcript.py    # Built-in demo transcript
├── requirements.txt        # Python dependencies
├── .env.example            # Environment variable template
├── .streamlit/
│   └── config.toml         # Streamlit theme config
├── LICENSE                 # MIT License
└── README.md

☁️ Deploy to Streamlit Cloud

  1. Push to GitHub
  2. Go to share.streamlit.io
  3. Connect your repo → select app.py
  4. Add OPENAI_API_KEY to Secrets
  5. Deploy 🚀

🛠️ Tech Stack

  • Streamlit — Interactive UI with progress tracking
  • OpenAI GPT-4o — Content generation
  • Python 3.9+ — Runtime

📄 License

MIT — see LICENSE.


Built by Arush Shankar · Powered by GPT-4o

About

Turn one podcast episode into a week of content — blog, tweets, LinkedIn, newsletter, YouTube

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages