This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend
What I Built
OutingFit Mumbai helps you decide what to wear and what to carry for an outing in Mumbai, based on the actual forecast for when you'll be out. It works by voice or text in English, Hindi or Marathi.
I have built this application for my lady friends who get confused that should they wear dress, jacket, carry a raincoat or sunglasses.
Demo
Code
supermanyu90
/
OutingFit
Tell OutingFit where you’re going—in your language—and get an outfit and packing checklist grounded in the weather for your outing
OutingFit
Weather-grounded outfit and packing advice for outings in Mumbai, in English, Hindi and Marathi, by voice or text.
speak / dictate / type ──► ElevenLabs (agent · Scribe STT) ──► outing form (visible, editable)
│ confirm place + date/times
▼
Open-Meteo forecast for the outing window ──► decision rules (config.ts) ──► Gemma
│ (explains
▼ localises)
Wear / Carry / Check cards + spoken summary ◄── validation (schema, coverage, numbers, script)
│
ElevenLabs TTS / agent speaks exactly that summary
How it works
- Input. The user talks to an ElevenLabs agent, dictates (Scribe v2 speech-to-text, with an editable transcript) or types. Gemma extracts the fields from dictated or typed text. The agent fills them itself through client tools. Either way the form on screen shows exactly what was understood.
- Confirmation. Weather is not fetched until the destination is unambiguous and the date and times are confirmed. "Bastian" matches…
How I Built It
1.Input: An ElevenLabs agent, Scribe speech-to-text (you can edit the transcript) or typed text. Gemma pulls the venue, date, times and preferences out of free-form Hindi, Marathi or English. Everything it understood shows up in an editable form before anything else happens.
2. Weather: The Open-Meteo hourly forecast for the outing window.
*For Logic and Control *, a deterministic rules engine with configurable thresholds turns the weather and what you told it into prioritised items, each with its evidence.
3. Gemma 4 (gemma-4-26b-a4b-it / 31b-it): writes the titles, explanations, outfit idea and a 60-word spoken summary. It can't add, drop or re-rank items.
4. Voice out: ElevenLabs again.
Gemma runs on the Gemini API in production, with a local Gemma 3 4B fallback through Ollama. Stack: TypeScript, Express, React 19, Vite, Tailwind, Zod. It's deployed on Render. 31 unit tests and 9 end-to-end scenarios cover the decision rules, the validators, the time-zone handling (including returns after midnight) and API-failure states. All of them pass.
Why Does Open Innovation Matter?
Apart from being Global Financial Hub, Mumbai rules with classy restaurants and has a globally recognized social klout. It's going to rain, or will I sweat my brains out: addressing the weather issue is always a concern in this happening city. One cannot browse multiple sources, predict the weather, and choose clothing. Here comes OutingFit. It takes on the recent extreme weather changes in the coastal city of Mumbai. A voice-enabled assistant that checks hourly weather for your outing and provides evidence-backed Wear / Carry / Check cards, a spoken summary, and outfit ideas.
You can choose the best from what you have, and no location-based suggestions from Amazon or Flipkart bother you to buy more and more.
Prize Categories
Featured categories
- Best Use of Render
- Best Use of Gemma Partner categories
- Best Use of ElevenLabs
- Best Use of Sentry Agent Tracing
- Best Use of SerpApi
Top comments (0)