Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎙️ VoicePaper: AI Podcast Generator

VoicePaper is a full-stack, containerized application that transforms online articles and research papers into engaging, on-demand podcasts. It leverages a modern Python-based stack, including a FastAPI backend for processing and a Streamlit frontend for user interaction.


🚀 Screenshots

Podcast app screenshot Podcast app screenshot Podcast app screenshot


✨ Features

  • URL & PDF Processing: Generate podcasts from both web articles and uploaded PDF documents.
  • AI-Powered Summarization: Uses Google's Gemini API to create concise, podcast-style scripts.
  • Podcast History: A full library of previously generated podcasts, stored and retrieved from a PostgreSQL database.
  • Responsive UI: An interactive frontend built with Streamlit.

🏛️ Architecture

VoicePaper is a multi-service application orchestrated with Docker Compose, featuring a decoupled frontend and backend for scalability and robustness.

User (Uploads URL/PDF) --------+
                               |
                               v                   
                +-----------------------------+     +-------------------------------+
                |   Streamlit Frontend        |---->|        FastAPI Backend        |
                | (UI & API Requester)        |     |     (Business Logic)          |
                +-----------------------------+     +-------------------------------+
                                                                |           ^
                                                                |           | (Summary)
                                                                v           |
                +-----------------------------+     +-------------------------------+
                |   PostgreSQL Database       |<----|        AI Pipeline          |
                |  (Stores History & Status)  |     | (Scrape/Extract -> Summarize) |
                +-----------------------------+     +-------------------------------+
                                                                |           ^
                                                                |           | (Text)
                                                                v           |
                                                            +--------------------+
                                                            |   Google Gemini    |
                                                            +--------------------+

🛠️ Tech Stack

  • Backend: FastAPI, PostgreSQL, SQLAlchemy
  • Frontend: Streamlit
  • AI: Google Gemini API, gTTS
  • DevOps: Docker, Docker Compose

⚙️ Setup & Installation

To run this project locally, ensure you have Docker and Docker Compose installed.

  1. Clone the repository:

    git clone https://github.com/your-username/voicepaper.git
    cd voicepaper
  2. Create your environment file: In the /backend directory, create a .env file and add your Gemini API key:

    GEMINI_API_KEY="your_api_key_here"
    
  3. Run with Docker Compose: From the root directory, run:

    docker-compose up --build
  4. Access the application:

    • Frontend: http://localhost:8501
    • Backend API Docs: http://localhost:8000/docs

About

A full-stack, containerized application that transforms online articles and research papers into on-demand podcasts using FastAPI, Streamlit, PostgreSQL, and Docker.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages