How jsr2406/zoolingo- works
ZooLingo is a voice-first animal-sound interpretation and pet-care product. In the main workflow, a caregiver records or selects an animal sound; the API processes and classifies it, applies a confidence gate, turns the interpretation into human-language text, and can return spoken audio. The product also includes pet profiles, health and care records, expert guidance, authentication, and subscription billing. The graph includes these documented capabilities, but some links to unsampled services are left unverified; dashed edges indicate relationships not directly evidenced in the excerpts.
Main entry points: app.py FastAPI application · App.jsx Web application · router.py Pet-care routes · supabase_client.py Supabase client
Components 27
Caregiver experience
- Web application
frontend/src/App.jsx - Audio recorder
frontend/src/components/AudioRecorder.jsx - Demo sound selector
frontend/src/components/DemoSoundSelector.jsx - History panel
frontend/src/components/HistoryPanel.jsx - Toast notifications
frontend/src/components/Toast.jsx
Voice interpretation
- FastAPI application
backend/app.py - Audio processing
backend/services/audio_processor.py - Deterministic classifier
backend/services/ai_classifier.py - YAMNet classifier
backend/services/yamnet_classifier.py - Text translation
backend/services/nlp_translator.py - Sarvam LLM translation
backend/services/sarvam_llm.py - Sarvam speech
backend/services/sarvam_integration.py - Murf speech fallback
backend/services/murf_integration.py - Sound-effect demos
backend/services/elevenlabs_sfx.py
Pet care
- Pet-care routes
backend/petcare/router.py - Care guidance engine
backend/petcare/expert_engine.py - Pet-care database
backend/petcare/database.py - Supabase client
backend/services/supabase_client.py
Accounts and billing
- Authentication routes
backend/auth_router.py - Authentication and quotas
backend/auth.py - Billing routes
backend/billing_router.py - Payment adapter
backend/services/payment_adapter.py
External services
- SARVAM AI
- Murf AI
- Supabase
- Payment provider
Other components
- Caregiver
Connections 27
- Caregiver → Web application: uses
- Web application → Audio recorder: renders
frontend/src/App.jsx - Web application → Demo sound selector: renders
frontend/src/App.jsx - Web application → History panel: renders
frontend/src/App.jsx - Web application → Toast notifications: renders
frontend/src/App.jsx - Web application → FastAPI application: sends audio
- FastAPI application → Audio processing: processes audio
backend/app.py - FastAPI application → Deterministic classifier: predicts
backend/app.py - FastAPI application → YAMNet classifier: tries classification
backend/app.py - FastAPI application → Text translation: translates
backend/app.py - FastAPI application → Sarvam LLM translation: requests translation
backend/app.py - FastAPI application → Sarvam speech: generates speech
backend/app.py - FastAPI application → Murf speech fallback: falls back
backend/app.py - FastAPI application → Sound-effect demos: serves demos
backend/app.py - Sarvam speech → SARVAM AI: calls
- Sarvam LLM translation → SARVAM AI: calls
- Murf speech fallback → Murf AI: calls
- Web application → Pet-care routes: uses care features
- Pet-care routes → Care guidance engine: requests advice
backend/petcare/router.py - Pet-care routes → Pet-care database: reads and writes
backend/petcare/router.py - Pet-care database → Supabase client: delegates records
backend/petcare/database.py - Supabase client → Supabase: accesses
- Authentication routes → Authentication and quotas: verifies users
backend/auth_router.py - Authentication routes → Supabase client: upserts profiles
backend/auth_router.py - Billing routes → Authentication and quotas: checks access
backend/billing_router.py - Billing routes → Payment adapter: handles payments
backend/billing_router.py - Payment adapter → Payment provider: integrates