Overview
A photo of a wine label, and a short reading: body, tannins, acidity, sweetness, alcohol, what to serve it with, and at what temperature. Search grounding is used so the answer is not limited to a fixed list of bottles. It follows NutriScan: a React 19 app, a Telegram bot, and a containerized API with Swagger, on Azure, with automated deploys. Reusing that shape made the second one much smaller.
Key outcomes
- Gemini multimodal wine recognition
- Google Search grounded sommelier insights
- Multi-channel Web SPA & Telegram Bot
Technologies
Gemini AIMultimodal AIGoogle Search GroundingReact 19TypeScriptNode.jsDockerAzure Static Web Apps

