Case study

Radio Perico

A translator with a very specific voice.

Paste ordinary Spanish and it comes back in the voice of Perico Delgado, the Tour winner turned cycling commentator. Live at radioperico.com, with a public course on how it was built.

RAG over a corpus of his own words

A corpus built from transcribed broadcasts and classified with an LLM, embedded with a multilingual sentence-transformers model and indexed in pgvector on Supabase. Each request retrieves the closest phrases and hands them, as examples to follow, to the Claude API — with the right model for each use case.

A FastAPI backend in Python

Python and FastAPI serve the translation as a stream, with embeddings from Hugging Face inference and pooled connections to Postgres; React and Vite on the front, with dictation and speech synthesis. An evaluation suite and spending caps keep it honest.

Built with

Python 3.14 · FastAPI · Claude API · pgvector on Supabase · Hugging Face inference · React 19 · Vite · whisper.cpp · Vercel

The code is private — happy to walk through it on a call. beltran@rengifo.es

← Back to the résumé

Need an engineer who ships end to end — and still sweats the pixels? Let's talk.

© 2026 Beltrán Rengifo