DEV Community

Cover image for What's for Dinner/Aaj Kya Banega? A 20B model trained to solve my Mom's kitchen crisis without the chatty fluff
Aniket Chaudhary
Aniket Chaudhary

Posted on AI-assisted

What's for Dinner/Aaj Kya Banega? A 20B model trained to solve my Mom's kitchen crisis without the chatty fluff

This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend

What I Built

The most dangerous question in any Indian household:

"Aaj khane mein kya banau?"
(What's for dinner?)
Enter fullscreen mode Exit fullscreen mode

Obviously, most days I'll say, "Make whatever you want." And there's a good chance either Mom gets frustrated with that answer, or we're having the same dish for the fourth time that week.

So I built What's for Dinner? for my Mom — and honestly, for the survival of the whole family (especially me).

It's an AI-powered meal-planning assistant that takes what's actually sitting in the fridge, using the names we naturally use at home — palak, paneer, bache hue chawal, etc. — and suggests at most 3 Indian home-cooked dishes that can actually be made.

It also remembers what the family has eaten recently, so nobody has to suffer through Aloo Gobi three days in a row.

But the most important feature isn't the recipes.

It's knowing when to stop talking.

Demo

Stop asking. Start cooking.

What's for dinner

👉 Live Demo on Render

The demo is running on Render's free tier, so the first request may take a little longer while the service wakes up.

Code

The entire project is open source:

What's for Dinner?

A full-stack application that suggests meals based on your available pantry items. It leverages the Tinker API to sample LLM-generated suggestions and uses the Backboard API to maintain a history of your recently selected meals, ensuring you don't get the same suggestion twice!

Project Structure

  • main.py: The FastAPI backend entry point. Provides /api/suggest for meal suggestions and /api/select to save your choice.
  • frontend/: The frontend Vite + React application, styled using Tailwind CSS.
  • train/: Scripts to fine-tune a LoRA model on custom meal suggestion data (train.jsonl).
  • render.yaml & build.sh: Configuration and scripts to deploy the application easily on Render.

Features

  • Meal Suggestions: Input the ingredients you have, and get 3-4 creative meal ideas.
  • Smart History Tracking: Integrates with Backboard API to store your recent dinner selections so the LLM knows what you've had recently and avoids repeating it.
  • Model…

The React frontend and FastAPI backend are deployed together as a single Web Service on Render, making the deployment simple and helping me make the most of the Hacktoberfest credits.

How I Built It

I wanted to build something fast, lightweight, culturally aware, and actually useful in a real Indian kitchen.

1. The Brain — Tinker + Open Weights

I fine-tuned the 20B open-weight gpt-oss-20b model using the Tinker Cookbook.

I trained an adapter called mom-chef-v1 on a synthetic dataset containing:

  • Indian recipes
  • Hinglish conversations
  • Local Indian ingredient names
  • Realistic household food constraints
  • Short, decisive responses

The goal wasn't just to teach the model about Indian food.

I wanted to teach it how to respond.

The adapter is hosted on Tinker's cloud GPUs, so my application doesn't need to carry around ~43 GB of model weights.

And the best part:

The entire fine-tuning run cost me just $0.16.

2. The Memory — Backboard

I integrated Backboard as the family's memory layer.

It keeps track of recent meals and provides that context to the model before it makes a suggestion.

This means the AI isn't only looking at what's in the fridge.

It also knows what we've already eaten.

So if someone says:

"Aloo ki sabzi toh kal hi bani thi."
Enter fullscreen mode Exit fullscreen mode

The system can treat that as a real constraint instead of suggesting the same thing again.

3. The Stack

  • React + Vite — Frontend
  • Tailwind CSS — UI
  • FastAPI — Backend
  • Tinker — Fine-tuning and model inference
  • Backboard — Persistent memory

The React application is compiled into static assets and served directly through the FastAPI backend.

4. Deployment

Everything is deployed as a single Web Service on Render.

The deployment configuration is included in the repository in render.yaml.

Why Open Innovation Matters

This project started because I tried using generic AI models for my Mom. They understood Hinglish and local ingredients, but they completely failed to understand how she wanted the answer.

A typical interaction looked like this:

Mom: "Aaj kya banau? Aloo hai, paneer hai aur palak bhi hai."
AI: "Aloo ki sabzi sounds wonderful!"
Mom: "Aloo ki sabzi toh kal hi bani thi, koi nahi khayega."
AI: "Yes, you're absolutely right! Since you've already had aloo yesterday, let's explore some other delicious alternatives..."

Mom doesn't want a conversation. She doesn't want validation. She wants the AI to eliminate the bad option and give her a practical answer immediately.

So, I designed What's for Dinner? around atomic, decisive responses. Instead of a chatty assistant, it just gives the options:

 Palak Paneer  
 Paneer Paratha 
 Kadhai Paneer
Enter fullscreen mode Exit fullscreen mode

No explanations. Just the answer.

This is where open innovation changed the game. Instead of fighting a closed model's inherently chatty nature with massive, brittle system prompts, I fine-tuned an open-weight model on household constraints and the exact short, decisive answers my Mom expects.

The goal wasn't just to build an AI that knows Indian food.

The goal was to build an AI that knows when to stop talking.

And thanks to open weights, I was able to build it for exactly $0.16.

Prize Categories

I'm submitting What's for Dinner? for:

Best Use of Tinker — Fine-tuned gpt-oss-20b into mom-chef-v1 for concise, culturally-aware Indian meal suggestions. Fine-tuning cost: $0.16.

Best Use of Render — Deployed the complete React + FastAPI application as a single Web Service on Render.

Backboard — Used Backboard as the family's memory layer to track recent meals and preferences.

Top comments (0)