An open API service indexing awesome lists of open source software.

https://github.com/furkankhann/interviewbot

Welcome to FurkanBot – an intelligent voice assistant built using Flask, Google Gemini (Generative AI), and gTTS. It listens to your voice, processes your query using an AI model (with Furkan's persona), and responds both as text and speech.
https://github.com/furkankhann/interviewbot

agentic-ai flask gemini gemini-api machine-learning nlp python webapp

Last synced: 2 months ago
JSON representation

Welcome to FurkanBot – an intelligent voice assistant built using Flask, Google Gemini (Generative AI), and gTTS. It listens to your voice, processes your query using an AI model (with Furkan's persona), and responds both as text and speech.

Awesome Lists containing this project

README

          

# πŸŽ™οΈ FurkanBot – AI-Powered Voice Assistant

Welcome to **FurkanBot** – an intelligent voice assistant built using **Flask**, **Google Gemini (Generative AI)**, and **gTTS**. It listens to your voice, processes your query using an AI model (with Furkan's persona), and responds both as text and speech.

Live demo coming soon!

---

## πŸš€ Features

βœ… Voice input via browser (Web Speech API)
βœ… Gemini-powered answers with personalized tone
βœ… gTTS voice output
βœ… Clean UI with loader
βœ… 5-second auto-record timeout
βœ… Easy to run locally

---

## πŸ“¦ Tech Stack

- **Frontend**: HTML, CSS, JavaScript
- **Backend**: Python + Flask
- **AI**: Google Generative AI (Gemini API)
- **Speech**: Web Speech API (input) + gTTS (output)

---

## 🧠 Project Structure

```text
FurkanBot/
β”œβ”€β”€ app.py # Flask backend
β”œβ”€β”€ talker.py # Gemini prompt logic (persona-based)
β”œβ”€β”€ interview.txt # Furkan's persona description
β”œβ”€β”€ templates/
β”‚ └── index.html # Web interface (HTML + CSS + JS)
β”œβ”€β”€ .env # Stores API key (not committed)
β”œβ”€β”€ requirements.txt # Python dependencies
└── README.md
```
## βš™οΈ Setup Instructions

### 1. Clone the Repository

```bash
git clone https://github.com/FurkanKhann/FurkanBot.git
cd FurkanBot
```
### 2. Create a Virtual Environment
```bash
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
```
### 3. Install Dependencies
``` bash
pip install -r requirements.txt
```
### 🧠 How It Works
Speech is captured using the browser’s microphone.
Text is sent to Flask backend (/ask endpoint).
Gemini generates a response based on interview.txt.
gTTS converts text to speech and returns it as base64 audio.
Audio + text is rendered in the browser.

### πŸ§ͺ Run the App
``` bash
python app.py
```