<?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: Shashwat Jha</title>
    <description>The latest articles on DEV Community by Shashwat Jha (@jhashashwat25).</description>
    <link>https://dev.to/jhashashwat25</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F99mvlsfu5tfj9m7ku25d.png</url>
      <title>DEV Community: Shashwat Jha</title>
      <link>https://dev.to/jhashashwat25</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jhashashwat25"/>
    <language>en</language>
    <item>
      <title>Sloth Notes: paste it, get the gist, all offline in your browser</title>
      <dc:creator>Shashwat Jha</dc:creator>
      <pubDate>Tue, 20 Oct 2026 07:30:16 +0000</pubDate>
      <link>https://dev.to/jhashashwat25/sloth-notes-paste-it-get-the-gist-all-offline-in-your-browser-2mop</link>
      <guid>https://dev.to/jhashashwat25/sloth-notes-paste-it-get-the-gist-all-offline-in-your-browser-2mop</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19"&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;Sloth Notes is a single web page that does the boring part of reading for you. Paste a lecture transcript, a long group chat or an article, pick what you want, and it gives you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a two-line summary&lt;/li&gt;
&lt;li&gt;a list of action items and deadlines&lt;/li&gt;
&lt;li&gt;six flashcards for revising&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I built it for students like me who end up with hours of lecture transcripts and 400-message group chats that never get read. Paste, click, done.&lt;/p&gt;

&lt;p&gt;Everything runs inside the browser tab. There's no backend, no API key and no account.&lt;/p&gt;

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

&lt;p&gt;Live: &lt;a href="https://jhashashwat25-creator.github.io/Sloth-Notes/" rel="noopener noreferrer"&gt;https://jhashashwat25-creator.github.io/Sloth-Notes/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It needs a recent Chrome or Edge on a laptop or desktop, because the model runs on WebGPU. The first load downloads the model (roughly 0.4 to 1.5 GB depending on which one you pick). After that it is cached and works with Wi-Fi off.&lt;/p&gt;

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


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/jhashashwat25-creator" rel="noopener noreferrer"&gt;
        jhashashwat25-creator
      &lt;/a&gt; / &lt;a href="https://github.com/jhashashwat25-creator/Sloth-Notes" rel="noopener noreferrer"&gt;
        Sloth-Notes
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Sloth-Notes&lt;/h1&gt;

&lt;/div&gt;
&lt;/div&gt;



&lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/jhashashwat25-creator/Sloth-Notes" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;The whole app is one &lt;code&gt;index.html&lt;/code&gt; file with no build step, released under the MIT license.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Models:&lt;/strong&gt; open-weight models in 4-bit quantised form: Qwen2.5 0.5B and 1.5B, Llama 3.2 1B, and Gemma 2 2B.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Runtime:&lt;/strong&gt; &lt;a href="https://github.com/mlc-ai/web-llm" rel="noopener noreferrer"&gt;WebLLM&lt;/a&gt;, an open-source inference engine that runs these models in the browser through WebGPU.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;App:&lt;/strong&gt; plain HTML, CSS and JavaScript. There's a model dropdown, a text box, three output modes (summary, action items, flashcards), and streamed output with a stop button.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works:&lt;/strong&gt; the page loads the chosen model once and caches it in the browser. Each mode is a short system prompt, and the pasted text is the user message. The answer streams back token by token.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keeping small models honest:&lt;/strong&gt; I kept temperature low (0.3), capped the input length, and told the model to use only the text provided, which reduces made-up details. Small models can still miss things, so the page says to check anything important against the original.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Privacy:&lt;/strong&gt; lecture recordings and group chats are personal. With an open-weight model running in the tab, the text never leaves the device. A closed API would mean sending it to someone else's server.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Works offline:&lt;/strong&gt; after the first download, there's no network dependency. That matters for students with patchy internet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero running cost:&lt;/strong&gt; there's no API bill and no rate limit, so there's no reason to ration it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Swappable models:&lt;/strong&gt; the dropdown switches between four open models. I can trade speed for quality on the same text, and a single closed API doesn't offer that choice.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free to host:&lt;/strong&gt; inference happens on the user's device, so the site is just a static file on GitHub Pages.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Lazy Payoff
&lt;/h2&gt;

&lt;p&gt;The point of the project is that reading is the part you keep putting off. Sloth Notes turns a wall of text into something you can read in seconds, and it does that without sending anything off your machine. Once the model is cached, using it takes one paste and one click.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Pocket-bookkeeper</title>
      <dc:creator>Shashwat Jha</dc:creator>
      <pubDate>Tue, 13 Oct 2026 15:40:40 +0000</pubDate>
      <link>https://dev.to/jhashashwat25/pocket-bookkeeper-24be</link>
      <guid>https://dev.to/jhashashwat25/pocket-bookkeeper-24be</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week2-2026-10-12"&gt;Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;Pocket Bookkeeper sorts bank and UPI statement lines into freelancer-style categories: software, internet and phone, travel, food, office, ads, bank and taxes, personal, and income. You paste a month of transactions, and it gives you category totals, a "business-looking spend" figure and a CSV download.&lt;/p&gt;

&lt;p&gt;The people who would pay for it are freelancers and tiny shops who spend an evening labelling statement lines before tax time or before sending numbers to an accountant. It could work as a small paid tool, or as a per-month cleanup service where I run it for someone and hand back the sorted sheet.&lt;/p&gt;

&lt;p&gt;The key point is that a bank statement is about the most private data a freelancer has. Pocket Bookkeeper never uploads it anywhere.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://jhashashwat25-creator.github.io/pocket-bookkeeper/" rel="noopener noreferrer"&gt;https://jhashashwat25-creator.github.io/pocket-bookkeeper/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tap "Try sample data", then "Sort my expenses". The first run downloads a model of about 23 MB, and your browser caches it after that. It runs on a phone.&lt;/p&gt;

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


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/jhashashwat25-creator" rel="noopener noreferrer"&gt;
        jhashashwat25-creator
      &lt;/a&gt; / &lt;a href="https://github.com/jhashashwat25-creator/pocket-bookkeeper" rel="noopener noreferrer"&gt;
        pocket-bookkeeper
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Pocket Bookkeeper&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Paste bank or UPI statement lines and get them sorted into freelancer-style categories (software, internet, travel, food, office, ads, bank and taxes, personal, income), with totals and a CSV download. A small open-source AI model does the sorting &lt;strong&gt;on your own device&lt;/strong&gt;, so your statement never leaves your phone or laptop.&lt;/p&gt;
&lt;p&gt;Built for the &lt;strong&gt;Hacktoberfest Open-Source AI Challenge: Week 2 (Side Hustle)&lt;/strong&gt; on DEV.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Live demo:&lt;/strong&gt; &lt;a href="https://YOUR-USERNAME.github.io/pocket-bookkeeper/" rel="nofollow noopener noreferrer"&gt;https://YOUR-USERNAME.github.io/pocket-bookkeeper/&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Who it's for&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Freelancers and tiny shops who dump a month of statement lines into a spreadsheet and spend an evening labelling them before tax time or before sending numbers to an accountant. It could be sold as a small paid tool or as a per-month cleanup service.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;The open-source AI at its core&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model:&lt;/strong&gt; &lt;a href="https://huggingface.co/Xenova/all-MiniLM-L6-v2" rel="nofollow noopener noreferrer"&gt;all-MiniLM-L6-v2&lt;/a&gt; (ONNX build by Xenova), Apache-2.0, about 23 MB quantized.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Runtime:&lt;/strong&gt; &lt;a href="https://github.com/huggingface/transformers.js" rel="noopener noreferrer"&gt;Transformers.js&lt;/a&gt; (Apache-2.0), running on WebAssembly in the browser.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it works:&lt;/strong&gt; every transaction description…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/jhashashwat25-creator/pocket-bookkeeper" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The whole app is three files: &lt;code&gt;index.html&lt;/code&gt;, &lt;code&gt;README.md&lt;/code&gt; and an MIT &lt;code&gt;LICENSE&lt;/code&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; all-MiniLM-L6-v2 (Apache-2.0), a small embedding model, about 23 MB quantized.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Runtime:&lt;/strong&gt; Transformers.js, running on WebAssembly in the browser. There is no backend and no API key.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How it sorts:&lt;/strong&gt; each category has a few example phrases, such as "uber trip" or "github subscription". The model turns every transaction and every example into a vector, and each transaction goes to the category with the closest example. If nothing is close enough, the row is marked "Unsure" and outlined in red so the user can fix it with a dropdown.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Parsing:&lt;/strong&gt; a small amount of plain JavaScript pulls the date, amount and description out of messy lines, including UPI reference numbers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Output:&lt;/strong&gt; category totals, a summary, and a CSV download.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I picked an embedding model instead of a chat model on purpose. It's tiny, fast, works on a phone, and can't invent text, which suits a job where being wrong about money matters. My first project this month used a larger chat model that crashed phone browsers, and this is the lesson I took from that.&lt;/p&gt;

&lt;p&gt;I used Claude to help write the code and README, then tested it myself.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Privacy you can check:&lt;/strong&gt; because the model runs in the browser, there is no server for statement data to reach. Anyone can read the source and confirm it.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero running cost:&lt;/strong&gt; there is no per-statement API bill, so the tool could be priced or given away without worrying about usage costs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Customizable without training:&lt;/strong&gt; the categories and example phrases are plain text in &lt;code&gt;index.html&lt;/code&gt;. Add phrases that look like your own statements, such as your shops, apps and clients, and the sorting improves immediately. A closed API wouldn't let me tune it this way.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No lock-in:&lt;/strong&gt; a closed API would mean a backend, a key to protect and a bill, and it would break whenever the provider changed pricing or terms. With open weights, the model ships with the page and keeps working.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Limits
&lt;/h2&gt;

&lt;p&gt;It's a sorting aid, not tax advice. Odd statement formats may need a quick manual fix, and merchants it hasn't seen may land in "Unsure".&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Touch Grass Nudge: a 10-minute outdoor mission from an AI that runs in your browser</title>
      <dc:creator>Shashwat Jha</dc:creator>
      <pubDate>Tue, 06 Oct 2026 05:57:45 +0000</pubDate>
      <link>https://dev.to/jhashashwat25/touch-grass-nudge-a-10-minute-outdoor-mission-from-an-ai-that-runs-in-your-browser-69k</link>
      <guid>https://dev.to/jhashashwat25/touch-grass-nudge-a-10-minute-outdoor-mission-from-an-ai-that-runs-in-your-browser-69k</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;Touch Grass Nudge is a one-page web app that gives you a tiny outdoor mission. You pick how long you have (5, 10 or 20 minutes), where you are (balcony, city street, near a park, campus or office) and how you feel (screen-tired, stressed, bored or restless). It replies with three short lines: a mission, why it helps, and what to bring.&lt;/p&gt;

&lt;p&gt;It's for anyone who has been staring at a screen too long and doesn't want to plan anything to step outside. There are no accounts, no tracking and nothing to install.&lt;/p&gt;

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

&lt;p&gt;&lt;a href="https://jhashashwat25-creator.github.io/touch-grass-nudge/" rel="noopener noreferrer"&gt;https://jhashashwat25-creator.github.io/touch-grass-nudge/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The first run downloads the model, a few hundred MB, so give it a minute. After that your browser caches it. It works best in recent Chrome or Edge on a laptop or desktop.&lt;/p&gt;

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


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/jhashashwat25-creator" rel="noopener noreferrer"&gt;
        jhashashwat25-creator
      &lt;/a&gt; / &lt;a href="https://github.com/jhashashwat25-creator/touch-grass-nudge" rel="noopener noreferrer"&gt;
        touch-grass-nudge
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Touch Grass Nudge&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;Pick how long you have, where you are and how you feel. A small open-weight language model running &lt;strong&gt;inside your browser tab&lt;/strong&gt; writes you one tiny outdoor mission.&lt;/p&gt;
&lt;p&gt;Built for the &lt;strong&gt;Hacktoberfest Open-Source AI Challenge: Week 1 (Touch Grass)&lt;/strong&gt; on DEV.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Live demo:&lt;/strong&gt; &lt;a href="https://YOUR-USERNAME.github.io/touch-grass-nudge/" rel="nofollow noopener noreferrer"&gt;https://YOUR-USERNAME.github.io/touch-grass-nudge/&lt;/a&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;The open-source AI at its core&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model:&lt;/strong&gt; &lt;a href="https://huggingface.co/Qwen/Qwen2.5-0.5B-Instruct" rel="nofollow noopener noreferrer"&gt;Qwen2.5-0.5B-Instruct&lt;/a&gt; (ONNX build: &lt;a href="https://huggingface.co/onnx-community/Qwen2.5-0.5B-Instruct" rel="nofollow noopener noreferrer"&gt;onnx-community/Qwen2.5-0.5B-Instruct&lt;/a&gt;), released under the Apache-2.0 license.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Runtime:&lt;/strong&gt; &lt;a href="https://github.com/huggingface/transformers.js" rel="noopener noreferrer"&gt;Transformers.js&lt;/a&gt; (Apache-2.0), using WebGPU when available and falling back to WebAssembly on CPU.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local inference:&lt;/strong&gt; no API key, no backend, no server. Your choices never leave your device.&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Why open innovation matters here&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;A "go outside" nudge should not need an account or a data plan. Because the model weights are open, the whole app can be one static page that anyone can host for free, read, fork and change.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Run it locally&lt;/h2&gt;

&lt;/div&gt;
&lt;div class="highlight highlight-source-shell notranslate position-relative overflow-auto js-code-highlight"&gt;
&lt;pre&gt;git clone https://github.com/YOUR-USERNAME/touch-grass-nudge.git
&lt;span class="pl-c1"&gt;cd&lt;/span&gt; touch-grass-nudge
python -m http.server 8000&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Open &lt;a href="http://localhost:8000" rel="nofollow noopener noreferrer"&gt;http://localhost:8000&lt;/a&gt;…&lt;/p&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/jhashashwat25-creator/touch-grass-nudge" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The whole app is three files: &lt;code&gt;index.html&lt;/code&gt;, &lt;code&gt;README.md&lt;/code&gt; and an MIT &lt;code&gt;LICENSE&lt;/code&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; Qwen2.5-0.5B-Instruct (Apache-2.0), using the ONNX build from &lt;code&gt;onnx-community&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Runtime:&lt;/strong&gt; Transformers.js. It uses WebGPU when the browser supports it and falls back to WebAssembly on CPU.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prompting:&lt;/strong&gt; a short system prompt forces a fixed three-line format (Mission, Why, Bring) under 60 words, with no emojis and nothing that needs money or special gear. That keeps a very small model's output short and usable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hosting:&lt;/strong&gt; because inference happens in the browser, the whole thing is a static page on GitHub Pages. There is no server and no API key.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I used Claude to help write the code and README, then tested it myself.&lt;/p&gt;

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

&lt;p&gt;A "go outside" nudge shouldn't need an account, a data plan or someone else's server. Open weights made it possible to ship the model with the page and run it on the user's own device, so what you pick (your mood, your location type) never leaves your browser.&lt;/p&gt;

&lt;p&gt;A closed API would have meant a backend, a key to protect and a usage bill, and it would stop working the day the provider changed terms. With open weights, anyone can host this for free, read every line, swap in a different model or fork it for their own city.&lt;/p&gt;

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

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>📚 StudyBuddy AI — A Friendly Python Learning Companion</title>
      <dc:creator>Shashwat Jha</dc:creator>
      <pubDate>Fri, 02 Oct 2026 17:15:48 +0000</pubDate>
      <link>https://dev.to/jhashashwat25/studybuddy-ai-a-friendly-python-learning-companion-3lmb</link>
      <guid>https://dev.to/jhashashwat25/studybuddy-ai-a-friendly-python-learning-companion-3lmb</guid>
      <description>&lt;p&gt;📚 StudyBuddy AI — A Python Learning Companion Built for a Friend&lt;/p&gt;

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

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

&lt;p&gt;I built StudyBuddy AI, a friendly AI-powered Python learning companion for a friend who is currently learning Python and sometimes finds programming concepts difficult to understand.&lt;/p&gt;

&lt;p&gt;When you're learning programming, documentation and tutorials can sometimes explain what something does without making it immediately clear why it works that way.&lt;/p&gt;

&lt;p&gt;I wanted to build something simpler: a place where my friend could enter a Python concept and get a beginner-friendly explanation together with a Python example.&lt;/p&gt;

&lt;p&gt;For example, instead of searching through several pages to understand a concept like list comprehension, they can ask StudyBuddy AI and get an explanation designed specifically for someone who is still learning the fundamentals.&lt;/p&gt;

&lt;p&gt;The goal wasn't to build another general-purpose chatbot. I wanted to build a small, focused learning tool around a real problem someone close to me was experiencing.&lt;/p&gt;

&lt;p&gt;Demo&lt;/p&gt;

&lt;p&gt;🌐 Live Demo:&lt;br&gt;
&lt;a href="https://jhashashwat25-creator.github.io/studybuddy-ai/" rel="noopener noreferrer"&gt;https://jhashashwat25-creator.github.io/studybuddy-ai/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The application runs directly in the browser.&lt;/p&gt;

&lt;p&gt;Code&lt;/p&gt;

&lt;p&gt;💻 GitHub Repository:&lt;br&gt;
&lt;a href="https://github.com/jhashashwat25-creator/studybuddy-ai" rel="noopener noreferrer"&gt;https://github.com/jhashashwat25-creator/studybuddy-ai&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;StudyBuddy AI is built with:&lt;/p&gt;

&lt;p&gt;HTML&lt;/p&gt;

&lt;p&gt;CSS&lt;/p&gt;

&lt;p&gt;JavaScript&lt;/p&gt;

&lt;p&gt;Hugging Face Transformers.js&lt;/p&gt;

&lt;p&gt;Qwen2.5-0.5B-Instruct&lt;/p&gt;

&lt;p&gt;GitHub Pages&lt;/p&gt;

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

&lt;p&gt;Instead of sending every question to a closed AI API, StudyBuddy AI uses the open-weight Qwen2.5-0.5B-Instruct model through Hugging Face Transformers.js.&lt;/p&gt;

&lt;p&gt;Transformers.js allows the model to run directly in the browser, which makes the AI component part of the application itself rather than simply being a frontend around a remote AI API.&lt;/p&gt;

&lt;p&gt;The basic flow is:&lt;/p&gt;

&lt;p&gt;User enters a Python concept → the browser runs the model → StudyBuddy generates a beginner-friendly explanation and example.&lt;/p&gt;

&lt;p&gt;This also made the project interesting technically because I had to think about running an AI model in a browser rather than assuming that inference would happen on a server.&lt;/p&gt;

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

&lt;p&gt;Open innovation was important to this project because the AI isn't just an invisible service sitting behind an API.&lt;/p&gt;

&lt;p&gt;Using an open-weight model gave me the ability to build the AI experience around the model itself and experiment with how it behaves.&lt;/p&gt;

&lt;p&gt;Running inference through Transformers.js also means the project can perform its AI work directly in the browser instead of requiring me to build and maintain a backend API just for model requests.&lt;/p&gt;

&lt;p&gt;That changes what is possible for a small project like this.&lt;/p&gt;

&lt;p&gt;As a beginner developer, I can inspect the application, experiment with the model, change the prompting and interface, and potentially swap or experiment with other models in the future.&lt;/p&gt;

&lt;p&gt;More importantly, it helped me build something specifically for my friend's learning needs instead of designing around the limitations of a closed API.&lt;/p&gt;

&lt;p&gt;Building for a Friend ❤️&lt;/p&gt;

&lt;p&gt;The reason I chose this project for the challenge is simple: I knew someone who was learning Python, and I wanted to make that learning process a little less frustrating.&lt;/p&gt;

&lt;p&gt;A small tool can sometimes be more useful than a huge application when it solves one specific problem well.&lt;/p&gt;

&lt;p&gt;StudyBuddy AI is my attempt at doing exactly that.&lt;/p&gt;

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

&lt;p&gt;There are several things I'd like to add as the project grows:&lt;/p&gt;

&lt;p&gt;📝 Generate practice exercises&lt;/p&gt;

&lt;p&gt;🧠 Generate quizzes&lt;/p&gt;

&lt;p&gt;💡 Provide hints instead of complete answers&lt;/p&gt;

&lt;p&gt;🌐 Support additional programming languages&lt;/p&gt;

&lt;p&gt;🎨 Improve the user interface&lt;/p&gt;

&lt;p&gt;💾 Add local conversation history&lt;/p&gt;

&lt;p&gt;I'd also like to learn more about running smaller open-weight models efficiently in the browser and explore how the learning experience can become more interactive.&lt;/p&gt;

&lt;p&gt;🌱 Final Thoughts&lt;/p&gt;

&lt;p&gt;This project started with a simple question:&lt;/p&gt;

&lt;p&gt;"Can I build something that actually helps my friend learn Python?"&lt;/p&gt;

&lt;p&gt;That question led me to experiment with browser-based AI, open-weight models, and Transformers.js.&lt;/p&gt;

&lt;p&gt;StudyBuddy AI is still a small project, but that's part of what I like about it. It solves a real problem for one person while giving me a chance to learn how open AI technology can be turned into something useful.&lt;/p&gt;

&lt;p&gt;Thanks for checking it out! ❤️&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Hello</title>
      <dc:creator>Shashwat Jha</dc:creator>
      <pubDate>Fri, 02 Oct 2026 04:36:38 +0000</pubDate>
      <link>https://dev.to/jhashashwat25/hello-2915</link>
      <guid>https://dev.to/jhashashwat25/hello-2915</guid>
      <description>&lt;p&gt;Hi&lt;/p&gt;

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