Skip to content

ImprovAIze

“Most of us get nervous about singing in front of people—whether it’s karaoke night, the school recital, or even my own performances.

Core trick

Extracts pitch, vibrato, and timbre features from a recorded take, then maps them to traits and drills through agent layers.

Tags

Description

“Most of us get nervous about singing in front of people—whether it’s karaoke night, the school recital, or even my own performances. I’ve felt that same anxiety, and it inspired me to build Vocalysis: an AI-assisted vocal coach that gives you objective, real-time feedback on your voice. Vocalysis focuses on the skills singers struggle with most: tuning, breath support, range, expressivity, and confidence. You upload or record a short clip, and our listener agent extracts pitch, energy, vibrato, and timbre features mapped to meaningful traits. From there, the interpreter flags what’s working and what needs attention, while the mentor layer translates it into quick drills and encouragement tailored to your practice goal. The effect is immediate. Instead of guessing why a note felt shaky or a phrase fell flat,
ayushkokande/Vocalysis★ 00 forksJavaScriptCreated Sep 27, 2025 · last push Sep 28, 2025

README excerpt

# Vocalysis — Multi-Agent Vocal Coach

Python multi-agent audio pipeline with both a Streamlit prototype and a new React + FastAPI experience.

## Features
- Upload a rehearsal or performance take and receive instant analysis
- Deep signal descriptors: vibrato shape, harmonic/percussive balance, spectral statistics
- Emotion heuristic that classifies the delivery (radiant, introspective, dramatic, etc.)
- Configurable practice goals that tailor coaching tips
- Lightweight JSON memory that stores recent sessions and feedback
- Interactive "Choir Room" with speech-driven drills and AI mentor prompts
- Microphone or file-upload analysis that pipes real takes through the FastAPI backend

## Getting Started

### Backend (FastAPI)
1. **Install dependencies**
   ```bash
   python3 -m venv .venv
   source .venv/bin/activate
   pip install -r requirements.txt
   ```
2. **Run the API**
   ```bash
   uvicorn app.api:app --host 127.0.0.1 --port 8000 --reload
   ```

### Frontend (React + Vite)
1. ```bash
   cd frontend
   npm install
   npm run dev -- --host 127.0.0.1 --port 5173
   ```
2. Visit `http://127.0.0.1:5173` and upload audio to trigger the pipeline.

By default the React client calls `http://localhost:8000`. Override via `.env` in `frontend/`:
```
VITE_API_BASE=http://127.0.0.1:8000
```

### Legacy Streamlit prototype
The original Streamlit UI still runs if you prefer the old flow:
```bash
streamlit run app/main.py
```

## Project Layout
```
vocalysis/
├── app/
│   ├── api.py 

Team