Cuqui
Voice-Controlled Smart Cooking Assistant
$ git clone github.com/JoseAPortillo/Cuqui$ open cuqui-app.duckdns.org
$ cat README.md
Cuqui is a voice-controlled cooking assistant that manages multiple named timers through natural language commands — create, pause, resume, extend, reduce, rename, and check timers using voice or text.
It was built as a TFM (Master’s Thesis) project to demonstrate AI integration, natural language parsing, real-time synchronization via WebSockets, and reproducible deployment with Docker. It’s a Progressive Web App: installable on mobile and running in production at cuqui-app.duckdns.org.
$ ls media/
[image]
$ ls src/
$ cat features.md
- Voice or text commands in Spanish and English
- Named timers: create, add time, reduce, pause, resume, cancel, rename
- Background notifications with alarm sound even when the screen is off (Push API + Service Worker + Web Audio)
- Real-time state sync via WebSockets
- Local ASR with faster-whisper; optional cloud fallback (OpenAI Whisper + LLM for low-confidence commands)
- Installable PWA for mobile — Android build via Capacitor with native alarm, screen wake and vibrate plugins
- TFM demo panel: local vs cloud processing mode and API key control
$ cat voice.md
Spanish
- “10 minutos para la pasta”
- “agregar 5 minutos al pollo”
- “pausar el pescado”
- “renombrar pasta a spaghetti”
English
- “set 10 minutes for pasta”
- “add 5 minutes to the chicken”
- “pause the fish”
- “rename pasta to spaghetti”
Commands are parsed by a deterministic rule-based parser; low-confidence commands fall back to an LLM.
$ cat architecture.md
Clean hexagonal architecture: domain (timers, commands, parser), application (use cases), ports (intent parser, speech-to-text, push notifications, storage) and adapters (FastAPI, rule parser, faster-whisper, webpush, SQLite/in-memory storage). Docker Compose with a multi-stage build ships frontend and backend together.
- backend — FastAPI + WebSockets, hexagonal layers, pytest suite (unit + integration)
- frontend — React 19 + TypeScript, VitePWA, Service Worker, Capacitor Android build
- deploy — docker-compose multi-stage, secure context (HTTPS) for voice capture
$ git status