How santosadvo/artur-voz-publico works
Artur-Voz is a small Brazilian Portuguese text-to-speech example with free-tier quota protection. The user supplies text through either the Python or TypeScript server-side entry point; it reserves monthly character quota, synthesizes with the primary Google voice (then a WaveNet reserve), and writes or returns MP3 audio. The Python example uses a local file counter; the TypeScript example accepts a reservation callback, with SQL documenting an atomic Postgres/Supabase option. The README also describes operating-system or browser speech as the final fallback. That fallback is documented, not implemented in the sampled examples.
Main entry points: falar.py Python CLI · falar.ts TypeScript API · voz_uso.sql Atomic reservation SQL · voz.json Voice configuration
Components 11
User entry points
- Python CLI
exemplos/falar.py - TypeScript API
exemplos/falar.ts
Quota management
- Local counter
exemplos/falar.py - Reservation callback
exemplos/falar.ts - Atomic reservation SQL
contador/voz_uso.sql
Speech generation
- Voice configuration
voz.json
Other components
- Text user
- Postgres / Supabase
- Google Cloud TTS
- MP3 audio
- System or browser speech
Connections 12
- Text user → Python CLI: provides text
README.md - Text user → TypeScript API: provides text
README.md - Python CLI → Voice configuration: reads settings
exemplos/falar.py - Python CLI → Local counter: reserves quota
exemplos/falar.py - Python CLI → Google Cloud TTS: requests synthesis
exemplos/falar.py - Python CLI → MP3 audio: writes MP3
exemplos/falar.py - TypeScript API → Reservation callback: requests reservation
exemplos/falar.ts - Reservation callback → Atomic reservation SQL: may invoke RPC
exemplos/falar.ts - Atomic reservation SQL → Postgres / Supabase: reserves atomically
README.md - TypeScript API → Google Cloud TTS: requests synthesis
exemplos/falar.ts - TypeScript API → MP3 audio: returns MP3
exemplos/falar.ts - Text user → System or browser speech: uses on exhaustion
README.md