<?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: Aman Gupta</title>
    <description>The latest articles on DEV Community by Aman Gupta (@aman_gupta_nbf).</description>
    <link>https://dev.to/aman_gupta_nbf</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%2F4162579%2F6bfca40c-3559-4ca9-89a3-d714f5446ee9.jpg</url>
      <title>DEV Community: Aman Gupta</title>
      <link>https://dev.to/aman_gupta_nbf</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/aman_gupta_nbf"/>
    <language>en</language>
    <item>
      <title>Let technology handles the routine of the older generation :)</title>
      <dc:creator>Aman Gupta</dc:creator>
      <pubDate>Mon, 05 Oct 2026 05:50:48 +0000</pubDate>
      <link>https://dev.to/aman_gupta_nbf/let-technology-handles-the-routine-of-the-older-generation--2cec</link>
      <guid>https://dev.to/aman_gupta_nbf/let-technology-handles-the-routine-of-the-older-generation--2cec</guid>
      <description>&lt;h1&gt;
  
  
  Sidekick: A Gentle Wellness Planner Built for My Dad with Gemma
&lt;/h1&gt;

&lt;p&gt;This is my submission for the &lt;strong&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  💡 The Idea
&lt;/h2&gt;

&lt;p&gt;I built &lt;strong&gt;Sidekick&lt;/strong&gt;, a calm and simple daily wellness planner designed for my dad.&lt;/p&gt;

&lt;p&gt;My dad doesn't need another complicated productivity dashboard filled with charts, numbers, and endless notifications.&lt;/p&gt;

&lt;p&gt;He needs something &lt;strong&gt;practical, familiar, encouraging, and easy to use&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;So instead of trying to optimize every minute of his day, Sidekick focuses on creating a gentle rhythm of small, achievable actions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🚶 A short morning walk&lt;/li&gt;
&lt;li&gt;🍽️ Simple meal suggestions&lt;/li&gt;
&lt;li&gt;💧 Hydration reminders&lt;/li&gt;
&lt;li&gt;🪑 Chair-friendly movement&lt;/li&gt;
&lt;li&gt;✅ Daily progress tracking&lt;/li&gt;
&lt;li&gt;💬 Encouraging notes&lt;/li&gt;
&lt;li&gt;🤖 Personalized suggestions from an open-source Gemma coach&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Make healthy routines feel approachable and repeatable.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🌱 What Sidekick Does
&lt;/h2&gt;

&lt;p&gt;When the app opens, the user gets a simple daily dashboard containing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A personalized greeting&lt;/li&gt;
&lt;li&gt;Today's progress&lt;/li&gt;
&lt;li&gt;A timeline of meals, movement, and hydration&lt;/li&gt;
&lt;li&gt;A daily meal plan&lt;/li&gt;
&lt;li&gt;A short movement suggestion&lt;/li&gt;
&lt;li&gt;A streak indicator&lt;/li&gt;
&lt;li&gt;A conversational &lt;strong&gt;Gemma wellness coach&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Activities can be completed with a single click.&lt;/p&gt;

&lt;p&gt;As activities are completed, the progress bar and completion count update immediately, providing small but visible wins throughout the day.&lt;/p&gt;

&lt;p&gt;I intentionally designed the interface to feel &lt;strong&gt;warm and familiar rather than clinical or overwhelming&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  🎥 Demo &amp;amp; Source Code
&lt;/h2&gt;

&lt;h3&gt;
  
  
  ▶️ Live Demo
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://drive.google.com/file/d/1hMLTBq7oWQ5RDAYsnxU6fgYX_g0QEujO/view?usp=sharing" rel="noopener noreferrer"&gt;&lt;strong&gt;Watch the Sidekick Demo&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 GitHub Repository
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/amangupta2april2007-crypto/sidekick" rel="noopener noreferrer"&gt;&lt;strong&gt;View the Sidekick Source Code on GitHub&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  🔄 How It Works
&lt;/h2&gt;

&lt;p&gt;The main user flow is intentionally simple:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open the &lt;strong&gt;Sidekick dashboard&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Review the day's wellness rhythm.&lt;/li&gt;
&lt;li&gt;Mark activities as completed.&lt;/li&gt;
&lt;li&gt;Open the &lt;strong&gt;Gemma Coach&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Tell the coach about a preference, such as:&lt;/li&gt;
&lt;/ol&gt;

&lt;ul&gt;
&lt;li&gt;"I want more vegetarian meals."&lt;/li&gt;
&lt;li&gt;"Suggest gentle knee-friendly exercise."

&lt;ol&gt;
&lt;li&gt;Receive a short and practical personalized plan.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The idea is that the user shouldn't have to learn how to use a complicated wellness system.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Open the app → see what to do → complete it → get encouragement.&lt;/strong&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  🛠️ Technology Stack
&lt;/h1&gt;

&lt;p&gt;Sidekick is built using:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Next.js&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;React&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;TypeScript&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tailwind CSS&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Express&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ollama&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Gemma 3 4B&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MongoDB Atlas&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Docker&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Render&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Vercel&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Important Files
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;src/app/(dashboard)/page.tsx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Main dashboard experience.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;src/app/api/coach/route.ts
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Next.js API proxy used to communicate with the Gemma agent.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;agent-service/server.js
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Gemma agent gateway.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;agent-service/Dockerfile
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Container configuration for the agent service.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;render.yaml
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Render deployment configuration.&lt;/p&gt;




&lt;h1&gt;
  
  
  🖥️ Frontend
&lt;/h1&gt;

&lt;p&gt;The frontend is a &lt;strong&gt;Next.js application built with React and TypeScript&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The dashboard maintains the current day's plan on the client and allows the user to mark individual activities as completed.&lt;/p&gt;

&lt;p&gt;The interface provides:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Visual feedback for completed activities&lt;/li&gt;
&lt;li&gt;Real-time progress updates&lt;/li&gt;
&lt;li&gt;Toast notifications&lt;/li&gt;
&lt;li&gt;Responsive layouts for smaller screens&lt;/li&gt;
&lt;li&gt;Simple icons and familiar terminology&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The daily rhythm currently includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌅 Morning movement&lt;/li&gt;
&lt;li&gt;🥣 Breakfast&lt;/li&gt;
&lt;li&gt;💧 Hydration&lt;/li&gt;
&lt;li&gt;🍛 Lunch&lt;/li&gt;
&lt;li&gt;🧘 Evening stretching and strength&lt;/li&gt;
&lt;li&gt;🍽️ Dinner&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I deliberately avoided introducing a new productivity system that the user has to learn.&lt;/p&gt;

&lt;p&gt;The interface should feel almost self-explanatory.&lt;/p&gt;




&lt;h1&gt;
  
  
  🤖 Gemma Coach
&lt;/h1&gt;

&lt;p&gt;One of the main parts of Sidekick is its &lt;strong&gt;Gemma-powered wellness coach&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;The coach uses &lt;strong&gt;Gemma 3 4B&lt;/strong&gt;, running locally through &lt;strong&gt;Ollama&lt;/strong&gt; and exposed through the application's agent service.&lt;/p&gt;

&lt;p&gt;When the user submits a note, the request follows this flow:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User
  ↓
Sidekick Dashboard
  ↓
/api/coach
  ↓
Gemma Agent Service
  ↓
Ollama
  ↓
Gemma 3 4B
  ↓
Personalized Response
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For example, a user might say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"I want a gentle knee-friendly exercise."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The coach can respond with a short, practical suggestion that fits the user's preference.&lt;/p&gt;

&lt;p&gt;The prompt is intentionally designed to make responses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Practical&lt;/li&gt;
&lt;li&gt;Kind&lt;/li&gt;
&lt;li&gt;Short&lt;/li&gt;
&lt;li&gt;Familiar&lt;/li&gt;
&lt;li&gt;Non-diagnostic&lt;/li&gt;
&lt;li&gt;Focused on small, achievable actions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The coach is &lt;strong&gt;not designed to diagnose medical conditions or prescribe treatment&lt;/strong&gt;. It is instructed to recommend consulting a qualified clinician for concerns involving pain, medication, or existing medical conditions.&lt;/p&gt;

&lt;p&gt;A simplified request from the frontend looks like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;/api/coach&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;POST&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Content-Type&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;application/json&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;},&lt;/span&gt;
  &lt;span class="na"&gt;body&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;JSON&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;stringify&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
    &lt;span class="na"&gt;note&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;Gentle knee-friendly exercise&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="p"&gt;}),&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h1&gt;
  
  
  🧠 Why I Built It This Way
&lt;/h1&gt;

&lt;p&gt;There are plenty of wellness and productivity applications that try to do everything.&lt;/p&gt;

&lt;p&gt;Sidekick intentionally doesn't.&lt;/p&gt;

&lt;p&gt;For my dad, I wanted the experience to answer one simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"What small things can I do today to take better care of myself?"&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead of overwhelming the user with information, Sidekick breaks the day into manageable actions.&lt;/p&gt;

&lt;p&gt;The focus is on &lt;strong&gt;consistency rather than perfection&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A completed walk, a glass of water, a healthy meal, or a few minutes of movement may seem small individually.&lt;/p&gt;

&lt;p&gt;But repeated every day, those small actions can become a routine.&lt;/p&gt;




&lt;h1&gt;
  
  
  ❤️ Built for a Person, Not Just a Use Case
&lt;/h1&gt;

&lt;p&gt;The most important part of this project is that I didn't start with a generic product idea.&lt;/p&gt;

&lt;p&gt;I started with &lt;strong&gt;a person I care about&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Building Sidekick made me think about how technology can be designed differently for people who don't necessarily want complicated apps.&lt;/p&gt;

&lt;p&gt;The challenge wasn't just:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"How can I build a wellness application?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"How can I build something my dad would actually want to use?"&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That changed many of my design decisions.&lt;/p&gt;




&lt;h1&gt;
  
  
  🚀 What's Next?
&lt;/h1&gt;

&lt;p&gt;There are several things I would like to explore next:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Better personalization based on long-term preferences&lt;/li&gt;
&lt;li&gt;More meal options&lt;/li&gt;
&lt;li&gt;Voice interaction for easier accessibility&lt;/li&gt;
&lt;li&gt;Family/caregiver support&lt;/li&gt;
&lt;li&gt;More personalized activity recommendations&lt;/li&gt;
&lt;li&gt;Better progress insights without making the interface overwhelming&lt;/li&gt;
&lt;li&gt;Additional Gemma-powered features&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;But I want to preserve the same principle as the project grows:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Technology should make healthy habits easier, not make life more complicated.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  🙌 Final Thoughts
&lt;/h2&gt;

&lt;p&gt;Sidekick is a small project, but it represents something I care about: &lt;strong&gt;building technology around people instead of forcing people to adapt to technology.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I built it for my dad, but the same idea could help anyone who wants a little structure, encouragement, and companionship while building healthier daily routines.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Small actions. Gentle guidance. One day at a time.&lt;/strong&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  🔗 Project Links
&lt;/h3&gt;

&lt;p&gt;🎥 &lt;a href="https://drive.google.com/file/d/1hMLTBq7oWQ5RDAYsnxU6fgYX_g0QEujO/view?usp=sharing" rel="noopener noreferrer"&gt;&lt;strong&gt;Watch the Demo&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;💻 &lt;a href="https://github.com/amangupta2april2007-crypto/sidekick" rel="noopener noreferrer"&gt;&lt;strong&gt;GitHub Repository&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;

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