<?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: Anshika Agarwal</title>
    <description>The latest articles on DEV Community by Anshika Agarwal (@anshika361).</description>
    <link>https://dev.to/anshika361</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%2F743399%2F89cafe5e-52ac-4e30-b013-043340b2d105.jpeg</url>
      <title>DEV Community: Anshika Agarwal</title>
      <link>https://dev.to/anshika361</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/anshika361"/>
    <language>en</language>
    <item>
      <title>[Boost]</title>
      <dc:creator>Anshika Agarwal</dc:creator>
      <pubDate>Sat, 24 Oct 2026 14:24:47 +0000</pubDate>
      <link>https://dev.to/anshika361/-4mpn</link>
      <guid>https://dev.to/anshika361/-4mpn</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl" class="crayons-story__hidden-navigation-link"&gt;🦥 SlothSummarize: Let AI Read It So You Don't Have To&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
      &lt;a href="https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl" class="crayons-article__context-note crayons-article__context-note__feed"&gt;&lt;p&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady Submission 🦥&lt;/p&gt;

&lt;/a&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/anshika361" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F743399%2F89cafe5e-52ac-4e30-b013-043340b2d105.jpeg" alt="anshika361 profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/anshika361" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Anshika Agarwal
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Anshika Agarwal
                
                
              
              &lt;div id="story-author-preview-content-4910943" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/anshika361" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F743399%2F89cafe5e-52ac-4e30-b013-043340b2d105.jpeg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Anshika Agarwal&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 24&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl" id="article-link-4910943"&gt;
          🦥 SlothSummarize: Let AI Read It So You Don't Have To
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/devchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;devchallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/hf26challenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;hf26challenge&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;2&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              1&lt;span class="hidden s:inline"&gt;&amp;nbsp;comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>ai</category>
      <category>productivity</category>
    </item>
    <item>
      <title>🦥 SlothSummarize: Let AI Read It So You Don't Have To</title>
      <dc:creator>Anshika Agarwal</dc:creator>
      <pubDate>Sat, 24 Oct 2026 14:23:41 +0000</pubDate>
      <link>https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl</link>
      <guid>https://dev.to/anshika361/slothsummarize-let-ai-read-it-so-you-dont-have-to-cfl</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;Meet &lt;strong&gt;SlothSummarize&lt;/strong&gt; — an AI-powered summarizer that does the reading so you don't have to!&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%2Fbfvci5kb28is3migtnp9.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%2Fbfvci5kb28is3migtnp9.png" alt="Home Page" width="697" height="822"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We all deal with lengthy emails, meeting notes, chat conversations, and articles that take forever to read. I wanted to build something that makes understanding long text effortless.&lt;/p&gt;

&lt;p&gt;SlothSummarize lets you paste any text and instantly get a &lt;strong&gt;2–3 sentence TL;DR and up to five actionable next steps&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;What makes it special?&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📝 &lt;strong&gt;Instant TL;DR:&lt;/strong&gt; Get straight to the important points.&lt;/li&gt;
&lt;li&gt;✅ &lt;strong&gt;Action Items:&lt;/strong&gt; Extract concrete next steps from lengthy text.&lt;/li&gt;
&lt;li&gt;🎭 &lt;strong&gt;Three Summary Styles:&lt;/strong&gt; Lazy (casual), Formal (professional), and Brutal (no-fluff).&lt;/li&gt;
&lt;li&gt;🔒 &lt;strong&gt;Privacy First:&lt;/strong&gt; AI inference happens locally in your browser.&lt;/li&gt;
&lt;li&gt;💸 &lt;strong&gt;No API Keys or Subscription Costs:&lt;/strong&gt; Run open-weight models on your own device.&lt;/li&gt;
&lt;li&gt;🦥 &lt;strong&gt;Simple and Fun:&lt;/strong&gt; A sloth-themed interface that makes summarization less boring.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Whether you're a developer catching up on documentation, a student reviewing notes, or a professional dealing with endless meeting transcripts, SlothSummarize helps you spend less time reading and more time doing.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The idea is simple: Less reading. More doing. Maximum laziness.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Live Demo:&lt;/strong&gt; [&lt;a href="https://slothsummarize.onrender.com/" rel="noopener noreferrer"&gt;https://slothsummarize.onrender.com/&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;Here's how it works:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open SlothSummarize in a compatible browser.&lt;/li&gt;
&lt;li&gt;Select your preferred AI model.&lt;/li&gt;
&lt;li&gt;Paste your text and choose a summary style.&lt;/li&gt;
&lt;li&gt;Click summarize and let the sloth do the work!&lt;/li&gt;
&lt;li&gt;Get your TL;DR and action items in seconds, depending on the model and your device.&lt;/li&gt;
&lt;/ol&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%2Fmu39qsaga3eemcmtgnin.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%2Fmu39qsaga3eemcmtgnin.png" alt="Waiting for model to install" width="741" height="792"&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%2Fmou3w3rh4s6cxk650fce.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%2Fmou3w3rh4s6cxk650fce.png" alt="Summarized result" width="611" height="837"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt; [&lt;a href="https://github.com/anshika361/SlothSummarize" rel="noopener noreferrer"&gt;https://github.com/anshika361/SlothSummarize&lt;/a&gt;]&lt;/p&gt;

&lt;p&gt;The project is built with a simple, lightweight structure:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;SlothSummarize/
├── index.html
├── style.css
├── app.js
├── llm-worker.js
├── sloth_mascot.png
└── README.md
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;No complicated setup, no backend infrastructure, and no API keys required for inference.&lt;/p&gt;

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

&lt;p&gt;The biggest question I wanted to explore was:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Can we build a useful AI application that runs entirely in the browser without sending user data to an external AI service?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The answer is SlothSummarize!&lt;/p&gt;

&lt;h3&gt;
  
  
  🧠 Open-Source AI with WebLLM
&lt;/h3&gt;

&lt;p&gt;I used &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 language models directly in the browser using WebGPU.&lt;/p&gt;

&lt;p&gt;The application supports these open-weight models:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Phi-3.5 Mini Instruct:&lt;/strong&gt; The default model for high-quality summaries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Llama 3.2 1B Instruct:&lt;/strong&gt; A smaller model for lightweight use.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Llama 3.2 3B Instruct:&lt;/strong&gt; An alternative balancing model size and output quality.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Users can choose a model depending on their device capabilities and preferences.&lt;/p&gt;

&lt;h3&gt;
  
  
  🏗️ Technology Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; HTML, CSS, and vanilla JavaScript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Runtime:&lt;/strong&gt; WebLLM&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Models:&lt;/strong&gt; Phi-3.5 Mini Instruct and Llama 3.2 1B/3B Instruct&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inference:&lt;/strong&gt; Local browser execution using WebGPU&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Design:&lt;/strong&gt; Sloth-themed UI, glassmorphism, and Hacktoberfest-inspired colors&lt;/li&gt;
&lt;/ul&gt;

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

&lt;ol&gt;
&lt;li&gt;The user pastes text into the application.&lt;/li&gt;
&lt;li&gt;JavaScript prepares the summarization prompt based on the selected style.&lt;/li&gt;
&lt;li&gt;WebLLM passes the prompt to the selected local language model.&lt;/li&gt;
&lt;li&gt;The model generates a concise summary and relevant action items.&lt;/li&gt;
&lt;li&gt;The results are displayed directly in the browser.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There is no application backend involved in the inference process.&lt;/p&gt;

&lt;p&gt;The model files are downloaded when required and cached for subsequent use. After the initial setup, the application is designed to support offline use, provided the necessary assets and model files are available locally.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Open innovation makes AI more accessible, customizable, and privacy-conscious.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Many AI applications rely on external APIs, which can introduce recurring costs, network dependencies, and concerns about sharing sensitive information.&lt;/p&gt;

&lt;p&gt;I wanted SlothSummarize to take a different approach.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔒 Privacy Without Compromise
&lt;/h3&gt;

&lt;p&gt;People often summarize private emails, internal discussions, and meeting notes. Processing their text locally means it doesn't need to be sent to a third-party inference service.&lt;/p&gt;

&lt;h3&gt;
  
  
  💸 AI Without Per-Request Costs
&lt;/h3&gt;

&lt;p&gt;There are no paid inference API calls or token-based charges. Users can run supported models on their own hardware.&lt;/p&gt;

&lt;h3&gt;
  
  
  🔧 Freedom to Experiment
&lt;/h3&gt;

&lt;p&gt;Open-weight models allow experimentation with different model sizes and summarization styles without being tied to a single proprietary AI provider.&lt;/p&gt;

&lt;h3&gt;
  
  
  🌱 Innovation Without Heavy Infrastructure
&lt;/h3&gt;

&lt;p&gt;A useful AI tool doesn't always need a complex backend, cloud deployment, or expensive infrastructure.&lt;/p&gt;

&lt;p&gt;With WebLLM and open-weight models, SlothSummarize demonstrates how a simple web application can provide AI-powered functionality directly on a user's device.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Open innovation made it possible to build a tool that is lightweight, customizable, and designed with privacy in mind.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;Imagine receiving a long meeting transcript with several decisions, deadlines, and action items.&lt;/p&gt;

&lt;p&gt;Instead of reading every line and manually identifying what matters, you paste it into SlothSummarize and get a concise overview.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Before&lt;/th&gt;
&lt;th&gt;After&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Read lengthy email threads&lt;/td&gt;
&lt;td&gt;Scan the key points&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Review entire meeting notes&lt;/td&gt;
&lt;td&gt;Get a short TL;DR&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Manually find follow-up tasks&lt;/td&gt;
&lt;td&gt;Extract suggested action items&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Rewrite summaries for different audiences&lt;/td&gt;
&lt;td&gt;Switch between three styles&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Send private text to a cloud AI API&lt;/td&gt;
&lt;td&gt;Process text locally&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The actual time saved depends on the text length, model, and device performance. Larger models may take time to download and generate results, especially on less powerful hardware.&lt;/p&gt;

&lt;p&gt;The best part? Once the model is cached, you can reuse it without downloading it again every time.&lt;/p&gt;

&lt;p&gt;It's a small productivity improvement, but those little saved moments add up.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Less time reading. More time building. That's the sloth philosophy. 🦥&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Hacktoberfest Open-Source AI Challenge — Week 3: Slow and Steady&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;SlothSummarize aligns with the challenge by combining open-weight AI, open-source inference technology, and practical automation to reduce everyday effort.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Add any specific partner prize categories you are entering after confirming the current challenge rules.&lt;/em&gt;&lt;/p&gt;




&lt;p&gt;Thanks for checking out SlothSummarize!&lt;/p&gt;

&lt;p&gt;If you like the idea, explore the code, share feedback, or contribute to making the sloth even smarter.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let AI handle the reading while you enjoy the slow and steady life.&lt;/strong&gt; 🦥💚&lt;/p&gt;

&lt;h1&gt;
  
  
  Hacktoberfest #OpenSource #AI #WebLLM #WebGPU #JavaScript #PrivacyFirst
&lt;/h1&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>InvoicePilot: A Private Invoice Desk for Freelancers</title>
      <dc:creator>Anshika Agarwal</dc:creator>
      <pubDate>Thu, 15 Oct 2026 21:17:17 +0000</pubDate>
      <link>https://dev.to/anshika361/invoicepilot-a-private-invoice-desk-for-freelancers-4m55</link>
      <guid>https://dev.to/anshika361/invoicepilot-a-private-invoice-desk-for-freelancers-4m55</guid>
      <description>&lt;h1&gt;
  
  
  InvoicePilot: A Private Invoice Desk for Freelancers
&lt;/h1&gt;

&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;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%2Fix3wl1nrkmmn4hre70j2.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%2Fix3wl1nrkmmn4hre70j2.png" alt="Home Page" width="800" height="623"&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%2Frmgeqy3y1jsy670ya7fc.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%2Frmgeqy3y1jsy670ya7fc.png" alt="Generated Invoice Report" width="800" height="656"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;InvoicePilot is a local-first invoice organizer for freelancers and solo business owners who are tired of manually sorting client bills and receipts. Paste invoice text—or import a &lt;code&gt;.txt&lt;/code&gt; file—and it pulls out the vendor, client, invoice number, date, subtotal, tax, total, and line items. It groups detected items into categories and includes a check that compares the invoice total with subtotal plus tax.&lt;/p&gt;

&lt;p&gt;The person I built this for is a freelancer who wants a quick expense snapshot without signing up for another cloud accounting service. InvoicePilot is a prototype, not a business with paying customers yet. A possible paid product would be a one-time purchase or a small subscription for freelancers who value a private, lightweight workflow; I have not validated pricing with users.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Live demo:&lt;/strong&gt; &lt;a href="https://invoicepilot-jdw6.onrender.com/" rel="noopener noreferrer"&gt;InvoicePilot on Render&lt;/a&gt;. Click &lt;strong&gt;Try sample&lt;/strong&gt;, confirm the hosted-demo privacy notice, then click &lt;strong&gt;Organize invoice&lt;/strong&gt; to see the dashboard, category breakdown, reconciliation check, and export/save actions. This public demo sends submitted text to the Render service for processing, so use fictional/test data only—not real invoices.&lt;/p&gt;

&lt;p&gt;For local use, install the dependencies, run &lt;code&gt;python app.py&lt;/code&gt;, and visit &lt;code&gt;http://127.0.0.1:5000&lt;/code&gt;. InvoicePilot accepts pasted text and &lt;code&gt;.txt&lt;/code&gt; files; it does not do PDF or image OCR.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Repository:&lt;/strong&gt; &lt;a href="https://github.com/anshika361/InvoicePilot" rel="noopener noreferrer"&gt;github.com/anshika361/InvoicePilot&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The app is built with Python and Flask. The code includes the invoice parser, the local Ollama integration, and the browser interface for CSV export and browser-local saves.&lt;/p&gt;

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

&lt;p&gt;InvoicePilot has two local processing paths:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;A deterministic parser extracts common invoice fields and line items. It also assigns simple categories such as design, development, travel, and software.&lt;/li&gt;
&lt;li&gt;If Ollama is running locally with the &lt;code&gt;llama3.2&lt;/code&gt; model installed, the app can ask that open-weight model to help structure invoice text. If Ollama is unavailable, the built-in parser remains usable without a cloud AI request.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The model is not the calculator: numeric totals parsed from the invoice source stay authoritative even if the model returns a different number. The dashboard compares subtotal plus tax with the stated total and shows a warning when they do not match. That’s important for financial data, where a plausible but incorrect number is worse than an obvious warning.&lt;/p&gt;

&lt;p&gt;The interface also supports CSV download, copyable summaries, and saving up to 12 invoice summaries in the browser’s local storage. Those saved summaries stay in that browser; they are not a shared account or a server-side database. Local mode processes invoice text on the user’s device. The public Render demo is different: submitted text is sent to the hosted service and should only be used with fictional/test data.&lt;/p&gt;

&lt;p&gt;For this development run, Ollama was not installed, so I verified the fallback path—not a live model inference. I added a test that simulates a conflicting model total to check that it cannot override the invoice’s parsed total. The project’s seven tests pass. I still need to run and record a real Ollama-backed invoice before describing the open-model extraction as demonstrated.&lt;/p&gt;

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

&lt;p&gt;Invoices contain names, client relationships, and money. In local mode, invoice text stays on the user’s device instead of going to a third-party AI service. An open-weight model can run on hardware the user controls, and the model can be swapped or adapted as invoice formats and user needs change. There is no per-request model API bill in this local setup, although running a model still has hardware and electricity costs. The public Render demo is a convenience for trying the sample workflow, not a private place to process real customer invoices.&lt;/p&gt;

&lt;p&gt;The fallback also matters: the basic workflow does not depend on an account, network connection, or paid model endpoint. Open tools make it possible to inspect and change the processing path instead of being locked into one provider’s pricing or data policies.&lt;/p&gt;

&lt;p&gt;I’m keeping the boundary clear: the current app supports local Ollama inference, but the sample session I verified used the deterministic fallback because Ollama was unavailable. The open-model path needs a hands-on test before I can claim it improved extraction quality over the fallback.&lt;/p&gt;

</description>
      <category>hf26challenge</category>
      <category>ai</category>
      <category>hacktoberfest</category>
      <category>devchallenge</category>
    </item>
    <item>
      <title>Groundline</title>
      <dc:creator>Anshika Agarwal</dc:creator>
      <pubDate>Sun, 11 Oct 2026 11:42:28 +0000</pubDate>
      <link>https://dev.to/anshika361/-15hp</link>
      <guid>https://dev.to/anshika361/-15hp</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9" class="crayons-story__hidden-navigation-link"&gt;Groundline: a two-minute outdoor briefing that gets you outside&lt;/a&gt;
    &lt;div class="crayons-article__cover crayons-article__cover__image__feed"&gt;
      &lt;iframe src="https://www.youtube.com/embed/RtpsRdu4XQs" title="Groundline: a two-minute outdoor briefing that gets you outside"&gt;&lt;/iframe&gt;
    &lt;/div&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
      &lt;a href="https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9" class="crayons-article__context-note crayons-article__context-note__feed"&gt;&lt;p&gt;Hacktoberfest: Maintainer Spotlight&lt;/p&gt;

&lt;/a&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/anshika361" class="crayons-avatar  crayons-avatar--l  "&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%2Fuser%2Fprofile_image%2F743399%2F89cafe5e-52ac-4e30-b013-043340b2d105.jpeg" alt="anshika361 profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/anshika361" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Anshika Agarwal
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Anshika Agarwal
                
                
              
              &lt;div id="story-author-preview-content-4832527" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/anshika361" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&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%2Fuser%2Fprofile_image%2F743399%2F89cafe5e-52ac-4e30-b013-043340b2d105.jpeg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Anshika Agarwal&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 11&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9" id="article-link-4832527"&gt;
          Groundline: a two-minute outdoor briefing that gets you outside
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/hf26challenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;hf26challenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/opensource"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;opensource&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/devchallenge"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;devchallenge&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/hacktoberfest"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;hacktoberfest&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;2&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              1&lt;span class="hidden s:inline"&gt;&amp;nbsp;comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            2 min read
          &lt;/small&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>showdev</category>
      <category>startup</category>
    </item>
    <item>
      <title>Groundline: a two-minute outdoor briefing that gets you outside</title>
      <dc:creator>Anshika Agarwal</dc:creator>
      <pubDate>Sun, 11 Oct 2026 11:42:08 +0000</pubDate>
      <link>https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9</link>
      <guid>https://dev.to/anshika361/groundline-a-two-minute-outdoor-briefing-that-gets-you-outside-41k9</guid>
      <description>&lt;p&gt;Built for the Touch Grass week of Hacktoberfest&lt;br&gt;
Most apps are designed to keep you in. Groundline is designed to get you out.&lt;br&gt;
You open it, tell it two things (how long you have and what kind of outing you want), and it hands you one pocket-sized card:&lt;/p&gt;

&lt;p&gt;📍 A destination, a real park near you&lt;br&gt;
👃 A sensory cue, something to notice when you get there&lt;br&gt;
⏱️ A timer, then the phone goes back in your pocket&lt;/p&gt;

&lt;p&gt;No feed, no infinite scroll. You do one quick check, then leave.&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%2Fy642u0ykqevhujs55fcv.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%2Fy642u0ykqevhujs55fcv.png" alt="Input Screen : The “how long do you have / what kind of outing” choices, to show how simple it is." width="800" height="365"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How it works&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Before the model writes a single word, Groundline gathers real local data:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OpenStreetMap supplies verified nearby parks and green spaces, so it never sends you somewhere that doesn’t exist.&lt;/li&gt;
&lt;li&gt;Open-Meteo supplies live weather, so a 20-minute walk is planned around the rain that’s about to arrive.&lt;/li&gt;
&lt;li&gt;Backboard routes the request to a model and keeps assistant memory, so the app knows which places you’ve already visited and can nudge you toward somewhere new.&lt;/li&gt;
&lt;li&gt;An open-weight model (Gemma, Llama or Qwen) writes the card from that grounded prompt.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The model doesn’t invent the destination. It only turns facts into a short, human-sounding card.&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%2Fdjfruo1tot5zvbf3brc6.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%2Fdjfruo1tot5zvbf3brc6.png" alt="Final card showing the destination, sensory cue and timer, ideally against a plain background" width="642" height="867"&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%2Fjkurloecm7onfnpzugfu.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%2Fjkurloecm7onfnpzugfu.png" alt="Second scenario/card generated for forest" width="692" height="847"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Why Backboard is central&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Two things make the card feel personal instead of generic:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It remembers. Places you’ve already been get deprioritized, so the app keeps nudging you somewhere new.&lt;/li&gt;
&lt;li&gt;It’s grounded. The final prompt is built from real OSM and weather data, which keeps the model from hallucinating a lake.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Backboard also makes swapping between open-weight models easy, so you can try Gemma, Llama or Qwen and see how each one changes the voice of the card.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;No model? No problem&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If the model is unavailable, a fallback almanac path still produces a card from the same local data. The core promise (a destination, a cue and a timer) survives without AI.&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%2Fsfl2cp49b25vcsjrx8ti.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%2Fsfl2cp49b25vcsjrx8ti.png" alt="Timer" width="799" height="447"&gt;&lt;/a&gt;&lt;br&gt;
Open source and easy to adapt&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%2Fyadd1j2yk5ezec6sq472.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%2Fyadd1j2yk5ezec6sq472.png" alt="Give Inputs after exploring" width="717" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Groundline is lightweight and meant to be forked. Swap in your city’s data, change the tone of the cards, or plug in a different model.&lt;/p&gt;

&lt;p&gt;👉 Github Repo: &lt;a href="https://github.com/anshika361/Groundline" rel="noopener noreferrer"&gt;Groundline&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you take a walk because of it, that’s the whole point. 🌳&lt;/p&gt;

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