<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Rahul Gupta</title>
    <description>The latest articles on DEV Community by Rahul Gupta (@rahul_gupta_63e12).</description>
    <link>https://dev.to/rahul_gupta_63e12</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4175365%2F574cc0c7-451d-483d-b054-d6e51d11d720.jpeg</url>
      <title>DEV Community: Rahul Gupta</title>
      <link>https://dev.to/rahul_gupta_63e12</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rahul_gupta_63e12"/>
    <language>en</language>
    <item>
      <title>Lazy Cook: an open-weight AI that turns whatever is in your fridge into an easy Indian dish</title>
      <dc:creator>Rahul Gupta</dc:creator>
      <pubDate>Sun, 01 Nov 2026 05:04:53 +0000</pubDate>
      <link>https://dev.to/rahul_gupta_63e12/lazy-cook-an-open-weight-ai-that-turns-whatever-is-in-your-fridge-into-an-easy-indian-dish-227i</link>
      <guid>https://dev.to/rahul_gupta_63e12/lazy-cook-an-open-weight-ai-that-turns-whatever-is-in-your-fridge-into-an-easy-indian-dish-227i</guid>
      <description>&lt;p&gt;I built this for Hacktoberfest Week 3 ("Slow and Steady") but missed the deadline, so this is a regular post and not a challenge entry.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Lazy Cook is a small web app for tired people who stand at the fridge and cannot decide what to cook. You type what you have, how many minutes you can spare, your diet, and what you can cook with (one pan on gas, a pressure cooker, or a microwave). It gives you one easy Indian dish, a shopping list of 3 items at most, and 3 to 6 steps that fit your time.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;Live app: &lt;a href="https://rahul-lazy-cook.streamlit.app/" rel="noopener noreferrer"&gt;https://rahul-lazy-cook.streamlit.app/&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/Rahulgupta-63/lazy-cook" rel="noopener noreferrer"&gt;https://github.com/Rahulgupta-63/lazy-cook&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgsslpxkwuiuys3jdf0kr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fgsslpxkwuiuys3jdf0kr.png" alt=" " width="727" height="653"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F40hhgbwcilggaza0chdl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F40hhgbwcilggaza0chdl.png" alt=" " width="800" height="688"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model:&lt;/strong&gt; GPT-OSS 20B (&lt;code&gt;openai/gpt-oss-20b&lt;/code&gt;), an open-weight model, through the Groq API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;App:&lt;/strong&gt; Python and Streamlit, deployed on Streamlit Community Cloud.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The hard part was trusting the answer, not getting an answer.&lt;/strong&gt; A language model can easily suggest eggs to a vegetarian, a stove to someone with only a microwave, or a recipe that takes 40 minutes when you asked for 15. So the app checks every recipe in code before showing it:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The total time is within your limit.&lt;/li&gt;
&lt;li&gt;There are 3 to 6 numbered steps.&lt;/li&gt;
&lt;li&gt;The shopping list has 3 items or fewer.&lt;/li&gt;
&lt;li&gt;The diet rule is kept (no eggs or meat for a vegetarian).&lt;/li&gt;
&lt;li&gt;It does not use equipment you don't have.&lt;/li&gt;
&lt;li&gt;It does not use foods you asked to avoid.&lt;/li&gt;
&lt;li&gt;It actually uses your ingredients.&lt;/li&gt;
&lt;li&gt;No calorie numbers or health claims.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If a check fails, the app sends the exact problems back to the model and tries again, up to 2 more times. If it still fails, it shows the recipe with a clear warning.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Input safety:&lt;/strong&gt; item lists are cut to 12 items of 30 characters, and anything that is not food (like bleach) is blocked. The item text is treated as data, so a pasted instruction cannot change the rules.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tests:&lt;/strong&gt; 150 automated checks on 10 situations, plus headless runs of the full app. These test my rules and my retry logic with a fake model. They do not test the real model's cooking advice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Honest limits
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;The model runs on Groq's servers through an API, so it needs internet. Your ingredient list leaves your device, so don't type anything private.&lt;/li&gt;
&lt;li&gt;I have not tested it with real users yet, and I have not compared it with a closed model.&lt;/li&gt;
&lt;li&gt;It is AI-generated. Check that food is fresh and fully cooked. It is not nutrition advice.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why Open-Weight Models
&lt;/h2&gt;

&lt;p&gt;The value of this project is the rule checker, not one specific model. Because the model is open-weight, I can swap it and run the same checks again. This happened to me: a Llama model I used on Groq became unavailable while I was building other projects, and I moved to GPT-OSS by changing one line.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Next step (not built yet):&lt;/strong&gt; run a small open model on my own laptop, so nothing leaves the device.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI Disclosure
&lt;/h2&gt;

&lt;p&gt;I used an AI assistant (Claude) to help write the code and draft this post. I ran the tests, deployed the app, and edited the post myself.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>python</category>
      <category>opensource</category>
      <category>streamlit</category>
    </item>
    <item>
      <title>Gym Plan Drafter: an open-weight AI that drafts safe, budget-aware workout plans for trainers</title>
      <dc:creator>Rahul Gupta</dc:creator>
      <pubDate>Sun, 18 Oct 2026 04:53:23 +0000</pubDate>
      <link>https://dev.to/rahul_gupta_63e12/gym-plan-drafter-an-open-weight-ai-that-drafts-safe-budget-aware-workout-plans-for-trainers-51ck</link>
      <guid>https://dev.to/rahul_gupta_63e12/gym-plan-drafter-an-open-weight-ai-that-drafts-safe-budget-aware-workout-plans-for-trainers-51ck</guid>
      <description>&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Gym Plan Drafter is a small web app for gym trainers. The trainer enters a client's age, job type, goal, experience, days per week, minutes per session, diet type and food budget. In about 10 seconds the app writes a draft weekly workout plan and simple Indian meal ideas. The trainer checks and edits it before the client sees it.&lt;/p&gt;

&lt;p&gt;Writing a plan by hand takes time, so many clients end up with the same copied sheet. That sheet fails when the client is a vegetarian on a small budget or has only 30 minutes.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Who would pay:&lt;/strong&gt; gym trainers and small gym owners, because it saves time on every new client. I have not asked my first user about pricing yet, so I can't say what they would pay.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0v8o2kq3efq33ncp2fyi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F0v8o2kq3efq33ncp2fyi.png" alt="Gym Plan Drafter plan for an adult client, 4 days" width="457" height="357"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5ucgmwech4owe4668z6m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5ucgmwech4owe4668z6m.png" alt="Gym Plan Drafter plan for a 16-year-old client with the Trainer must check box" width="308" height="688"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/Rahulgupta-63/gym-plan-drafter" rel="noopener noreferrer"&gt;https://github.com/Rahulgupta-63/gym-plan-drafter&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model:&lt;/strong&gt; GPT-OSS 20B (&lt;code&gt;openai/gpt-oss-20b&lt;/code&gt;), an open-weight model, through the Groq API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;App:&lt;/strong&gt; Python and Streamlit, deployed on Streamlit Community Cloud.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The hard part was trust, not the model.&lt;/strong&gt; My first version gave eggs to a vegetarian client, and quinoa, hummus and almonds on a "low budget" plan. A trainer would stop using a tool like that after one bad plan.&lt;/p&gt;

&lt;p&gt;So I added two layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Rules in the prompt:&lt;/strong&gt; exact number of days, minutes that add up, food that fits the diet and budget, no calorie numbers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A checker in code:&lt;/strong&gt; every plan is tested against these rules. If it fails, the app sends the exact problems back to the model and tries again, up to 2 more times. If it still fails, the plan is shown with a clear warning.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Safety choices:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;I first thought about asking clients for body photos. I dropped the idea, because it is a privacy risk and a photo cannot reliably tell what a body needs.&lt;/li&gt;
&lt;li&gt;No calorie targets.&lt;/li&gt;
&lt;li&gt;Under 14: no plan.&lt;/li&gt;
&lt;li&gt;Under 18: general fitness only, and the plan must tell the trainer to supervise, keep loads light, and tell a parent or guardian.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Tests:&lt;/strong&gt; 170 automated checks on 10 client profiles. They test my rules and retry logic with a fake model. They do not test the model itself.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Honest limits:&lt;/strong&gt; the model runs on Groq's servers through an API, so client details leave the trainer's computer. Don't enter names or medical details. The plans are drafts, not medical advice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;

&lt;p&gt;The product is the rules and the checker, not one model. Because the model is open-weight, I can swap it and run the same checks again. This is not just theory for me: last week a Llama model I used on Groq became unavailable, and I moved to GPT-OSS by changing one line.&lt;/p&gt;

&lt;p&gt;I did not test a closed model side by side, so I can't claim mine is better. What I can say is that I am not locked to one company's model or price.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Next step (not built yet):&lt;/strong&gt; run a small open model on the gym's own PC, so a client's health details never leave the gym.&lt;/p&gt;

&lt;h2&gt;
  
  
  My First User
&lt;/h2&gt;

&lt;p&gt;A gym trainer I know tried the app. They tested a fat-loss profile: an MCA student at KNIT Sultanpur on a 4-day schedule. They told me the plan was "perfect".&lt;/p&gt;

&lt;p&gt;That is one friendly person, so I treat it as a start, not proof.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What they asked for next:&lt;/strong&gt; they asked if the app could also explain how to perform each exercise. That is the first feature I will add. It is not built yet.&lt;/p&gt;

&lt;h2&gt;
  
  
  AI Disclosure
&lt;/h2&gt;

&lt;p&gt;I used an AI assistant (Claude) to help write the code and draft this post. I tested the app, deployed it, showed it to a real trainer, and edited the post myself.&lt;/p&gt;

&lt;p&gt;Thanks for reading!&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Touch Grass Planner: an open-weight AI that gets you off your screen</title>
      <dc:creator>Rahul Gupta</dc:creator>
      <pubDate>Sat, 10 Oct 2026 17:37:53 +0000</pubDate>
      <link>https://dev.to/rahul_gupta_63e12/touch-grass-planner-an-open-weight-ai-that-gets-you-off-your-screen-3min</link>
      <guid>https://dev.to/rahul_gupta_63e12/touch-grass-planner-an-open-weight-ai-that-gets-you-off-your-screen-3min</guid>
      <description>&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Touch Grass Planner is a small web app that gets you off your screen. You pick your free time, your mood, the weather, and where you live. It suggests one free outdoor activity with 3 steps, and the minutes add up to the time you chose.&lt;/p&gt;

&lt;p&gt;It is for anyone who sits at a screen too long. I built it because my days are busy, and when I finally get some free time, I never know what to do. This app decides for me, so I can just go outside.&lt;/p&gt;

&lt;p&gt;Live app: &lt;a href="https://touch-grass-planner-euqcu6hwuipckakidznvt2.streamlit.app" rel="noopener noreferrer"&gt;https://touch-grass-planner-euqcu6hwuipckakidznvt2.streamlit.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxe9o9r3w1heotfj3tghm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fxe9o9r3w1heotfj3tghm.png" alt="Touch Grass Planner showing a rainy village walk plan" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/Rahulgupta-63/touch-grass-planner" rel="noopener noreferrer"&gt;https://github.com/Rahulgupta-63/touch-grass-planner&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model:&lt;/strong&gt; GPT-OSS 20B (&lt;code&gt;openai/gpt-oss-20b&lt;/code&gt;), an open-weight model, called through the Groq API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;App:&lt;/strong&gt; Python and Streamlit, deployed on Streamlit Community Cloud.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prompt design:&lt;/strong&gt; the part that took most of my time. My first version ignored my time limit and suggested a jog in hot weather. I fixed it with clear rules: the step times must add up to the minutes chosen, hot weather means shade and water, rain means no hard exercise, and no health claims.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Limits, honestly:&lt;/strong&gt; the model runs on Groq's servers through an API, not on my laptop, so it needs internet. You choose the weather by hand, because the app has no weather data. The suggestions are AI-generated, so use your own judgment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;

&lt;p&gt;I started with a Llama model on Groq. While I was building, that model was no longer available. Because I was using open-weight models, I changed one line of code and moved to GPT-OSS, and the app kept working. With a single closed model, I would have been stuck with whatever the one company decided to offer. Open weights also mean I can swap models, compare them, and later try running one locally. That is my next step.&lt;/p&gt;

&lt;p&gt;I used an AI assistant (Claude) to help write the code and draft this post. I tested the app myself, deployed it, and edited the post.&lt;/p&gt;

</description>
      <category>hf26challenge</category>
      <category>devchallenge</category>
    </item>
  </channel>
</rss>
