How alexandru-sacasanu/callflow works
Anti is a call-center QA application: users upload recordings, which are transcribed, anonymized, speaker-role classified, and scored before results are presented in the web UI. The API orchestrates processing and persists call metadata, segments, PII mappings, and QA results in Supabase. The README documents the analysis stages; API and helper excerpts show key calls and storage writes. Frontend source was not sampled, so UI-to-API connections are shown as unverified rather than asserted.
Main entry points: api.py CallFlow API · index.html Web application · api.js API client · helpers.py Role classification
Components 23
Web experience
- Web application
callflow-ui/index.html - Login and auth
callflow-ui/assets/js/pages/login.js - Call upload
callflow-ui/assets/js/components/upload.js - Dashboard and calls
callflow-ui/assets/js/pages/dashboard.js - Call detail
callflow-ui/assets/js/pages/call-detail.js - API client
callflow-ui/assets/js/api.js
API and orchestration
- CallFlow API
api.py - Pipeline orchestration
api.py
Transcript analysis
- Speech transcription
soniox_client.py - PII anonymization
helpers.py - Romanian name data
data/romanian_names.py - Role classification
helpers.py - QA scoring
helpers.py - Claude client setup
claude_controler.py
Call data
- Call records
api.py - Transcript segments
api.py - PII mappings
api.py - QA results
api.py - Audio storage
api.py
External services
- Soniox STT
- Anthropic Haiku
- Supabase
Other components
- Call-center user
Connections 27
- Call-center user → Web application: uses
- Web application → Login and auth: routes to
- Web application → Call upload: routes to
- Web application → Dashboard and calls: routes to
- Web application → Call detail: routes to
- Login and auth → API client: uses
- Call upload → API client: uses
- Dashboard and calls → API client: uses
- Call detail → API client: uses
- API client → CallFlow API: requests
- CallFlow API → Pipeline orchestration: starts
api.py - Pipeline orchestration → Speech transcription: transcribes
api.py - Pipeline orchestration → PII anonymization: anonymizes
api.py - Pipeline orchestration → Role classification: classifies
api.py - Pipeline orchestration → QA scoring: analyzes
api.py - Speech transcription → Soniox STT: uploads audio
soniox_client.py - Role classification → Anthropic Haiku: classifies with
helpers.py - QA scoring → Anthropic Haiku: scores with
helpers.py - Role classification → Romanian name data: uses names
helpers.py - Role classification → Claude client setup: creates client
helpers.py - QA scoring → Claude client setup: creates client
helpers.py - CallFlow API → Supabase: authenticates
api.py - CallFlow API → Call records: reads and writes
api.py - CallFlow API → Transcript segments: writes segments
api.py - CallFlow API → PII mappings: writes mappings
api.py - CallFlow API → QA results: writes results
api.py - CallFlow API → Audio storage: uploads audio
api.py