<?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: Mohd Ashab</title>
    <description>The latest articles on DEV Community by Mohd Ashab (@mohd_ashab_6fe0c714df666b).</description>
    <link>https://dev.to/mohd_ashab_6fe0c714df666b</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%2F4162460%2F05575f60-50ee-4daf-81f9-5217e47a1980.png</url>
      <title>DEV Community: Mohd Ashab</title>
      <link>https://dev.to/mohd_ashab_6fe0c714df666b</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mohd_ashab_6fe0c714df666b"/>
    <language>en</language>
    <item>
      <title>StudyBuddy AI: A Local AI Study Companion Powered by Gemma 3 4B</title>
      <dc:creator>Mohd Ashab</dc:creator>
      <pubDate>Mon, 05 Oct 2026 00:58:21 +0000</pubDate>
      <link>https://dev.to/mohd_ashab_6fe0c714df666b/studybuddy-ai-a-local-ai-study-companion-powered-by-gemma-3-4b-4bi3</link>
      <guid>https://dev.to/mohd_ashab_6fe0c714df666b/studybuddy-ai-a-local-ai-study-companion-powered-by-gemma-3-4b-4bi3</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;StudyBuddy AI&lt;/strong&gt;, a local-first AI study companion designed for a fellow college student who struggles with understanding difficult topics and organizing exam preparation.&lt;/p&gt;

&lt;p&gt;The problem I wanted to solve was bigger than simply getting an answer from an AI.&lt;/p&gt;

&lt;p&gt;When studying a difficult topic, a student usually needs to:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Understand → Practice → Test → Revise → Plan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;StudyBuddy AI turns that workflow into one application.&lt;/p&gt;

&lt;p&gt;A student can enter a topic and ask StudyBuddy to explain it, then immediately:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ask for a simpler explanation&lt;/li&gt;
&lt;li&gt;Get an analogy&lt;/li&gt;
&lt;li&gt;Practice the concept&lt;/li&gt;
&lt;li&gt;Take an interactive quiz&lt;/li&gt;
&lt;li&gt;Review mistakes&lt;/li&gt;
&lt;li&gt;Generate an exam-focused revision sheet&lt;/li&gt;
&lt;li&gt;Create a multi-day study plan&lt;/li&gt;
&lt;li&gt;Save useful explanations, quizzes, revisions, and plans&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal is to make AI useful as a &lt;strong&gt;learning companion&lt;/strong&gt;, rather than just another chatbot.&lt;/p&gt;

&lt;p&gt;The project is intentionally local-first. The AI runs on the user's machine using &lt;strong&gt;Ollama and Gemma 3 4B&lt;/strong&gt;, without requiring OpenAI, Gemini, Claude, or another cloud AI API.&lt;/p&gt;




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

&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://github.com/ashab683/studybudy-ai" rel="noopener noreferrer"&gt;https://github.com/ashab683/studybudy-ai&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The demo shows the complete learning workflow:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Explanation → Follow-up → Quiz → Revision → Study Plan → Saved Resources&lt;/strong&gt;&lt;/p&gt;


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

&lt;p&gt;The complete source code is available here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ashab683/studybudy-ai" rel="noopener noreferrer"&gt;https://github.com/ashab683/studybudy-ai&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The repository contains the React frontend, Express backend, Ollama integration, prompts, validation, local storage utilities, and setup instructions.&lt;/p&gt;


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

&lt;p&gt;The core architecture is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;React + Vite + Tailwind
          ↓
      Express API
          ↓
    Ollama Local Runtime
          ↓
       Gemma 3 4B
          ↓
       Express API
          ↓
        React UI
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Tech Stack
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;Vite&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;Tailwind CSS&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Backend&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;Express&lt;/li&gt;
&lt;li&gt;REST API&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AI&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;li&gt;Gemma 3 4B&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Storage&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Browser localStorage&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most important part of the project is the local AI pipeline.&lt;/p&gt;

&lt;p&gt;The frontend sends requests to the Express backend. The backend validates the request, builds a task-specific prompt, and sends it to the local Ollama API. Ollama runs Gemma 3 4B locally and returns the generated response to the backend, which then sends it back to the React application.&lt;/p&gt;

&lt;h3&gt;
  
  
  Interactive Quiz Mode
&lt;/h3&gt;

&lt;p&gt;StudyBuddy can generate structured multiple-choice quizzes using Gemma.&lt;/p&gt;

&lt;p&gt;The quiz system supports:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Easy, medium, and hard difficulty&lt;/li&gt;
&lt;li&gt;3–10 questions&lt;/li&gt;
&lt;li&gt;Progress tracking&lt;/li&gt;
&lt;li&gt;Immediate feedback&lt;/li&gt;
&lt;li&gt;Score calculation&lt;/li&gt;
&lt;li&gt;Answer explanations&lt;/li&gt;
&lt;li&gt;Mistake review&lt;/li&gt;
&lt;li&gt;Bookmarking&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The backend requests structured JSON from the model instead of treating the response as plain text.&lt;/p&gt;

&lt;p&gt;Conceptually, the generated data looks like:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"title"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Stack in Data Structures"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"questions"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"question"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"What principle does a stack follow?"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"options"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"FIFO"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"LIFO"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"Random access"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="s2"&gt;"Priority order"&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"correctIndex"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"explanation"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"A stack follows the Last In, First Out principle."&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Because local models can sometimes return JSON wrapped in markdown or slightly malformed structures, I added parsing, validation, and normalization so the application can handle model output more reliably.&lt;/p&gt;

&lt;h3&gt;
  
  
  Exam Revision Mode
&lt;/h3&gt;

&lt;p&gt;The revision workflow generates a concise exam-focused study sheet containing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Core definitions&lt;/li&gt;
&lt;li&gt;Important rules and formulas&lt;/li&gt;
&lt;li&gt;Key differences&lt;/li&gt;
&lt;li&gt;Common exam traps&lt;/li&gt;
&lt;li&gt;Important revision questions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Students can copy or save the generated revision material and directly create a quiz on the same topic.&lt;/p&gt;

&lt;h3&gt;
  
  
  Study Plan Generator
&lt;/h3&gt;

&lt;p&gt;Students can provide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Subject&lt;/li&gt;
&lt;li&gt;Syllabus topics&lt;/li&gt;
&lt;li&gt;Hours available per day&lt;/li&gt;
&lt;li&gt;Number of days until their exam&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;StudyBuddy then generates a multi-day schedule.&lt;/p&gt;

&lt;p&gt;The frontend turns that response into interactive daily tasks with completion tracking and revision tips.&lt;/p&gt;

&lt;h3&gt;
  
  
  Contextual Follow-ups
&lt;/h3&gt;

&lt;p&gt;Instead of ending after an explanation, StudyBuddy provides contextual actions such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Give me an analogy&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Explain more simply&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Take a Quiz on this&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Create Revision Sheet&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Line-by-line code breakdown&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This creates a continuous learning flow instead of a single question-and-answer interaction.&lt;/p&gt;

&lt;h3&gt;
  
  
  Saved Resources and History
&lt;/h3&gt;

&lt;p&gt;I intentionally avoided adding a database to the MVP.&lt;/p&gt;

&lt;p&gt;StudyBuddy uses browser &lt;code&gt;localStorage&lt;/code&gt; to persist:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Saved explanations&lt;/li&gt;
&lt;li&gt;Quizzes&lt;/li&gt;
&lt;li&gt;Revision sheets&lt;/li&gt;
&lt;li&gt;Study plans&lt;/li&gt;
&lt;li&gt;Recent sessions&lt;/li&gt;
&lt;li&gt;Theme preference&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This keeps the application simple while still allowing users to continue their study workflow after refreshing the browser.&lt;/p&gt;

&lt;h3&gt;
  
  
  Dark Mode
&lt;/h3&gt;

&lt;p&gt;The application also includes a persistent dark mode designed for longer study sessions.&lt;/p&gt;

&lt;p&gt;The theme is saved locally and applied across the complete interface.&lt;/p&gt;




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

&lt;p&gt;Using open-weight AI and local inference changed what I could build.&lt;/p&gt;

&lt;p&gt;StudyBuddy does not depend on a proprietary AI API or a paid API key.&lt;/p&gt;

&lt;p&gt;Instead, the AI layer runs locally:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;StudyBuddy AI
      ↓
    Ollama
      ↓
  Gemma 3 4B
      ↓
Local inference
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This provides several advantages.&lt;/p&gt;

&lt;h3&gt;
  
  
  Privacy
&lt;/h3&gt;

&lt;p&gt;Study questions and learning material can remain on the student's own machine instead of automatically being sent to a third-party AI service.&lt;/p&gt;

&lt;h3&gt;
  
  
  No API Key
&lt;/h3&gt;

&lt;p&gt;A student can run the application without creating an account with a cloud AI provider or managing an API key.&lt;/p&gt;

&lt;h3&gt;
  
  
  No Per-request Cloud Cost
&lt;/h3&gt;

&lt;p&gt;Once Ollama and the model are installed, the application does not need a paid cloud AI API for its core AI functionality.&lt;/p&gt;

&lt;h3&gt;
  
  
  Control and Experimentation
&lt;/h3&gt;

&lt;p&gt;The AI model is configurable through the application's environment.&lt;/p&gt;

&lt;p&gt;This allowed me to experiment with prompts, structured outputs, different learning modes, and error handling while keeping the architecture simple.&lt;/p&gt;

&lt;p&gt;There is also an important trade-off.&lt;/p&gt;

&lt;p&gt;Local inference can be slower than cloud APIs depending on the user's hardware. During development, some Gemma 3 4B requests took around a minute or more.&lt;/p&gt;

&lt;p&gt;That trade-off was an important part of the project:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Local AI provides more control and privacy, but performance depends heavily on the user's hardware.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Open innovation made it possible for me to build the AI layer as an actual part of the application instead of simply consuming a proprietary AI service.&lt;/p&gt;




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

&lt;p&gt;One of my biggest lessons from building StudyBuddy AI was that integrating AI into an application is much more than writing a prompt.&lt;/p&gt;

&lt;p&gt;The surrounding engineering matters just as much.&lt;/p&gt;

&lt;p&gt;I learned about:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Running open-weight models locally with Ollama&lt;/li&gt;
&lt;li&gt;Designing prompts for different learning workflows&lt;/li&gt;
&lt;li&gt;Structured AI output&lt;/li&gt;
&lt;li&gt;Defensive JSON parsing&lt;/li&gt;
&lt;li&gt;API validation&lt;/li&gt;
&lt;li&gt;React state management&lt;/li&gt;
&lt;li&gt;Persistent browser storage&lt;/li&gt;
&lt;li&gt;Loading and error states&lt;/li&gt;
&lt;li&gt;Building responsive interfaces around asynchronous AI operations&lt;/li&gt;
&lt;li&gt;Designing an AI product around a real user problem&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The most important lesson was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;AI should be treated as a component of the product, not the entire product.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The value comes from what you build around the model.&lt;/p&gt;




&lt;h2&gt;
  
  
  Challenges
&lt;/h2&gt;

&lt;p&gt;The biggest technical challenge was dealing with the unpredictable nature of local AI responses.&lt;/p&gt;

&lt;p&gt;For normal explanations, plain text was enough.&lt;/p&gt;

&lt;p&gt;But quizzes required reliable structured data.&lt;/p&gt;

&lt;p&gt;The model could sometimes return:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;JSON inside markdown code blocks&lt;/li&gt;
&lt;li&gt;Unexpected fields&lt;/li&gt;
&lt;li&gt;Incomplete structures&lt;/li&gt;
&lt;li&gt;Formatting that wasn't directly usable by React&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of assuming the model would always behave perfectly, I added a parsing and validation layer between Ollama and the frontend.&lt;/p&gt;

&lt;p&gt;Another challenge was response time.&lt;/p&gt;

&lt;p&gt;Because Gemma 3 4B runs locally, generation speed depends on the hardware. This made loading states and error handling important parts of the user experience.&lt;/p&gt;




&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;StudyBuddy AI is currently an MVP, but there are several improvements I would like to make:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Streaming local model responses&lt;/li&gt;
&lt;li&gt;Faster inference and improved loading UX&lt;/li&gt;
&lt;li&gt;Support for additional Ollama models&lt;/li&gt;
&lt;li&gt;Flashcards&lt;/li&gt;
&lt;li&gt;Spaced repetition&lt;/li&gt;
&lt;li&gt;Coding practice&lt;/li&gt;
&lt;li&gt;Better personalization based on quiz mistakes&lt;/li&gt;
&lt;li&gt;Long-term study progress tracking&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next major improvement would be streaming responses so users can start reading an AI response while Gemma is still generating it.&lt;/p&gt;




&lt;h2&gt;
  
  
  My Agent Session
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Best Use of Gemma
&lt;/h3&gt;

&lt;p&gt;StudyBuddy AI uses &lt;strong&gt;Gemma 3 4B&lt;/strong&gt; as the core AI model powering explanations, quizzes, revision sheets, follow-up learning, and study-plan generation.&lt;/p&gt;

&lt;p&gt;The model runs locally through &lt;strong&gt;Ollama&lt;/strong&gt;, making Gemma an actual part of the application's core architecture rather than an optional feature.&lt;/p&gt;




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

&lt;p&gt;StudyBuddy AI started with a simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;What if an AI study assistant didn't just answer a student's question, but helped them actually learn the topic?&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That question led me to build a workflow around:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Understand → Practice → Quiz → Revise → Plan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Using Ollama and Gemma 3 4B made it possible to build that workflow around local AI instead of relying on a paid cloud API.&lt;/p&gt;

&lt;p&gt;The project is still an MVP, and there is plenty I want to improve, especially response speed and personalization.&lt;/p&gt;

&lt;p&gt;But I'm happy with what it has become: a working local-first learning companion built around a real student problem.&lt;/p&gt;

&lt;p&gt;Instead of building another chatbot, I wanted to build something that helps a student move from:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"I don't understand this."&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;to:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"I understand it, I practiced it, I tested myself, and I know what to revise next."&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;That's what StudyBuddy AI is trying to accomplish.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;GitHub:&lt;/strong&gt; &lt;a href="https://github.com/ashab683/studybudy-ai" rel="noopener noreferrer"&gt;https://github.com/ashab683/studybudy-ai&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  devchallenge #weekendchallenge #hf26challenge
&lt;/h1&gt;

</description>
      <category>ai</category>
      <category>learning</category>
      <category>productivity</category>
      <category>weekendchallenge</category>
    </item>
    <item>
      <title>Intro</title>
      <dc:creator>Mohd Ashab</dc:creator>
      <pubDate>Sun, 04 Oct 2026 20:54:57 +0000</pubDate>
      <link>https://dev.to/mohd_ashab_6fe0c714df666b/intro-12ll</link>
      <guid>https://dev.to/mohd_ashab_6fe0c714df666b/intro-12ll</guid>
      <description>&lt;p&gt;happy to be the part of the dev.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
