<?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: Jitin Kumar</title>
    <description>The latest articles on DEV Community by Jitin Kumar (@__jitin__2102__).</description>
    <link>https://dev.to/__jitin__2102__</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%2F4168425%2F2ed4b5dd-ec77-4cb7-800c-230fa3b84e80.jpg</url>
      <title>DEV Community: Jitin Kumar</title>
      <link>https://dev.to/__jitin__2102__</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/__jitin__2102__"/>
    <language>en</language>
    <item>
      <title>Sloth-Sorter: An Offline, CPU-Only File Organiser Powered by Local SLMs</title>
      <dc:creator>Jitin Kumar</dc:creator>
      <pubDate>Sun, 25 Oct 2026 17:01:09 +0000</pubDate>
      <link>https://dev.to/__jitin__2102__/sloth-sorter-an-offline-cpu-only-file-organiser-powered-by-local-slms-28gb</link>
      <guid>https://dev.to/__jitin__2102__/sloth-sorter-an-offline-cpu-only-file-organiser-powered-by-local-slms-28gb</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;&lt;code&gt;sloth-sorter&lt;/code&gt; is a zero-dependency, offline daemon that automatically categorises and renames chaotic files in your &lt;code&gt;Downloads&lt;/code&gt; directory using local Small Language Models (SLMs). Instead of letting files pile up as &lt;code&gt;scan_0031 (2).pdf&lt;/code&gt; or &lt;code&gt;final_v2_edited.docx&lt;/code&gt;, it inspects the file content and moves it into a structured &lt;code&gt;Sorted/&amp;lt;category&amp;gt;/&lt;/code&gt; directory with a deterministic, semantic filename like &lt;code&gt;2026-10-19-acme-invoice-42.pdf&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;It is designed for developers who want an automated filesystem without sending personal documents to external APIs or burning GPU cycles. Because automated file operations carry inherent risk, the architecture prioritises safety:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Dry Run by Default:&lt;/strong&gt; Previews the entire execution plan and proposed diffs before touching the filesystem.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transactional Und o Log:&lt;/strong&gt; Tracks every batch operation in SQLite, allowing instant, single-command rollbacks to restore original paths and filenames.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Declarative Config Rules:&lt;/strong&gt; Uses plain-English routing rules in a local configuration file so you can adjust categorisation logic without modifying the source code.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbdigl5rd32w0j61i9524.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%2Fbdigl5rd32w0j61i9524.png" alt="sloth-sorter terminal execution" width="800" height="515"&gt;&lt;/a&gt;&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/Jitin2102" rel="noopener noreferrer"&gt;
        Jitin2102
      &lt;/a&gt; / &lt;a href="https://github.com/Jitin2102/HactoberFest-Challenges-Week-3" rel="noopener noreferrer"&gt;
        HactoberFest-Challenges-Week-3
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      hactoberfest week 3 challenge
    &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;HactoberFest-Challenges-Week-3&lt;/h1&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;🦥 sloth-sorter&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;A lazy, fully local file tidier. A small open-weight model (via Ollama) reads each new file in your Downloads folder, picks a category, gives it a sensible name, and files it away. Nothing leaves your machine. Every move is logged so you can undo it.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Setup (CPU-only is fine)&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;&lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; 1. Install Ollama (https://ollama.com), then:&lt;/span&gt;
ollama pull qwen2.5:3b          &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; ~2 GB, runs on CPU. Try qwen2.5:1.5b if it's slow.&lt;/span&gt;
&lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; 2. Optional, for PDF text:&lt;/span&gt;
pip install pypdf
&lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; 3. Edit config.toml (folders, categories, plain-English rules)&lt;/span&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;p&gt;Needs Python 3.11+. No other dependencies.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Use&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;python sloth_sorter.py plan              &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; dry run (default), moves nothing&lt;/span&gt;
python sloth_sorter.py apply             &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; do it&lt;/span&gt;
python sloth_sorter.py undo              &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; reverse the last batch&lt;/span&gt;
python sloth_sorter.py watch --interval 600   &lt;span class="pl-c"&gt;&lt;span class="pl-c"&gt;#&lt;/span&gt; tidy every 10 minutes&lt;/span&gt;
python sloth_sorter.py bench --models qwen2.5:1.5b,qwen2.5:3b,llama3.2:3b&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;How it stays safe&lt;/h2&gt;

&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Dry run is the default; &lt;code&gt;apply&lt;/code&gt; is explicit.&lt;/li&gt;
&lt;li&gt;Skips hidden files, partial…&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/Jitin2102/HactoberFest-Challenges-Week-3" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


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

&lt;p&gt;The core constraint was building a tool that runs reliably on a standard CPU-only laptop without bloating the Python environment.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Inference Engine:&lt;/strong&gt; Runs ``locally via &lt;strong&gt;Ollama&lt;/strong&gt;. At 3 billion parameters, it hits the sweet spot between CPU token generation speed and instruction-following accuracy for structured output.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero-Dependency Core:&lt;/strong&gt; Built strictly on the Python standard library (&lt;code&gt;urllib.request&lt;/code&gt;, &lt;code&gt;sqlite3&lt;/code&gt;, &lt;code&gt;pathlib&lt;/code&gt;, `&lt;code&gt;), communicating directly with Ollama's local REST API (&lt;/code&gt;&lt;a href="http://localhost:11434/api/generate%60%7B%" rel="noopener noreferrer"&gt;http://localhost:11434/api/generate`{%&lt;/a&gt; endraw %}). Optional PDF text extraction is supported if {% raw %}&lt;code&gt;pypdf&lt;/code&gt; is present in the environment.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Execution Pipeline:&lt;/strong&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Ingestion &amp;amp; Filtering:&lt;/strong&gt; Scans the target directory while ignoring hidden dot-files, active browser &lt;code&gt;.crdownload&lt;/code&gt;/&lt;code&gt;.part&lt;/code&gt; buffers, and files with open write locks.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Context Extraction:&lt;/strong&gt; Reads file metadata and extracts a bounded text header from plaintext, source code, &lt;code&gt;.docx&lt;/code&gt; (via standard &lt;code&gt;zipfile&lt;/code&gt; XML parsing), and PDFs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Constrained Inference:&lt;/strong&gt; Prompts the local model to return a strict JSON payload.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Validation &amp;amp; Sanitisation:&lt;/strong&gt; Verifies the output against an allowed category whitelist, strips illegal filesystem characters, and resolves naming collisions automatically (&lt;code&gt;-2&lt;/code&gt;, &lt;code&gt;-3&lt;/code&gt;).

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Atomic Move &amp;amp; Logging:&lt;/strong&gt; Executes the file transfer and commits the transaction ID, source path, and destination path to a local SQLite database.&lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Guardrails:&lt;/strong&gt; If the LLM hallucinates an invalid schema or Ollama times out, the pipeline degrades gracefully to a deterministic extension-based fallback router so a bad inference never crashes the batch run.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Built-in Benchmarking (&lt;code&gt;bench&lt;/code&gt;):&lt;/strong&gt; Includes a benchmarking CLI command that runs a test suite of files across multiple local models (&lt;code&gt;qwen2.5:1.5b&lt;/code&gt;, &lt;code&gt;qwen2.5:3b&lt;/code&gt;, &lt;code&gt;llama3.2:3b&lt;/code&gt;) to measure latency per file and category agreement on your specific hardware.&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;Strict Data Privacy:&lt;/strong&gt; A &lt;code&gt;folder is a goldmine of sensitive data—bank statements, tax forms, IDs, and private keys. Running open-weight models locally guarantees zero data exfiltration; not a single byte leaves&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Marginal Cost:&lt;/strong&gt; Cloud LLM APIs charge per token, which makes background system utilities economically impractical. Local inference turns file organisation into a free, background OS primitive that works completely offline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model Agnostic &amp;amp; Swappable:&lt;/strong&gt; Relying on open weights prevents vendor lock-in. Using the &lt;code&gt;bench&lt;/code&gt; command, I was able to empirically test different parameter sizes and quantisation levels (&lt;code&gt;qwen2.5&lt;/code&gt; vs. &lt;code&gt;llama3.2&lt;/code&gt;) and select the exact model that matched my CPU's thermal and latency constraints.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auditable &amp;amp; Hackable:&lt;/strong&gt; Open-source tooling paired with local models means you control both the system prompt and the routing engine. Adding a custom rule like &lt;em&gt;"Route receipts into &lt;code&gt;/finance&lt;/code&gt; and prefix with the vendor name"&lt;/em&gt; takes one line of config rather than waiting on a SaaS feature request.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Rather than racing for sub-second cloud latency, 'sloth-sorter' embraces the "slow and steady" philosophy: it quietly processes files in the background on CPU threads while I focus on actual work. &lt;/p&gt;

&lt;p&gt;In a test run across a cluttered directory of ** mixed files** (PDFs, code snippets, archives, and docs), it categorised and renamed the entire batch in &lt;strong&gt;~3.5 minutes&lt;/strong&gt; on CPU—saving ~20 minutes of manual inspection and renaming. When one ambiguous document was misclassified during testing, a single &lt;code&gt;undo&lt;/code&gt; command cleanly reverted the batch, and a one-line tweak to the plain-English rules fixed the behaviour permanently.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>LocalBiz AI: A Local AI Marketing Assistant for Small Businesses 🌱</title>
      <dc:creator>Jitin Kumar</dc:creator>
      <pubDate>Sat, 17 Oct 2026 11:49:28 +0000</pubDate>
      <link>https://dev.to/__jitin__2102__/localbiz-ai-a-local-ai-marketing-assistant-for-small-businesses-2j7n</link>
      <guid>https://dev.to/__jitin__2102__/localbiz-ai-a-local-ai-marketing-assistant-for-small-businesses-2j7n</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;Small businesses often struggle to create consistent marketing content because hiring a copywriter or subscribing to multiple AI tools can be expensive.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;LocalBiz AI&lt;/strong&gt; is a marketing content assistant designed to help small business owners generate promotional content tailored to their business, audience, platform, and preferred tone.&lt;/p&gt;

&lt;p&gt;Users can generate:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📱 Social media posts and promotional captions&lt;/li&gt;
&lt;li&gt;🛍️ Product descriptions&lt;/li&gt;
&lt;li&gt;📧 Promotional emails&lt;/li&gt;
&lt;li&gt;💬 Marketing messages for customer outreach&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The application uses a local language model to generate content and provides a template-based fallback when the model is unavailable.&lt;/p&gt;

&lt;p&gt;The goal is simple: help small businesses save time on routine marketing tasks while keeping AI tools accessible.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Who could benefit?&lt;/strong&gt; Local cafés, clothing stores, fitness centres, bakeries, freelancers, and other small businesses that need regular promotional content.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Run it locally:&lt;/strong&gt; Follow the installation instructions in the GitHub README.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Application URL:&lt;/strong&gt; &lt;code&gt;http://127.0.0.1:8000&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The application runs on your local machine after setup. A publicly deployed demo is not currently available.&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/Jitin2102/LocalBiz-AI" rel="noopener noreferrer"&gt;Jitin2102/LocalBiz-AI&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The repository contains the application source code, frontend, FastAPI backend, setup scripts, and testing files.&lt;/p&gt;

&lt;p&gt;Contributions and suggestions are welcome!&lt;/p&gt;

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

&lt;p&gt;I built LocalBiz AI using Python, FastAPI, HTML, CSS, and JavaScript, with SQLite for storing generation history.&lt;/p&gt;

&lt;p&gt;The most important part is its integration with &lt;strong&gt;Ollama and Gemma 3 1B&lt;/strong&gt;, an open-weight language model that can run locally.&lt;/p&gt;

&lt;h3&gt;
  
  
  The technology stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Python:&lt;/strong&gt; Application logic and backend development.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI:&lt;/strong&gt; REST API and request handling.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Gemma 3 1B:&lt;/strong&gt; Local language model for marketing content generation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ollama:&lt;/strong&gt; Local model execution and inference.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SQLite:&lt;/strong&gt; Storage for generated content history.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HTML, CSS, and JavaScript:&lt;/strong&gt; Responsive user interface.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pytest:&lt;/strong&gt; Automated testing.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  How it works
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;The user enters their business name, business type, target audience, platform, content type, tone, and key details.&lt;/li&gt;
&lt;li&gt;The frontend sends the information to the FastAPI backend.&lt;/li&gt;
&lt;li&gt;The backend uses the local Gemma model through Ollama to generate marketing content.&lt;/li&gt;
&lt;li&gt;If the model is unavailable, the application can fall back to template-based generation.&lt;/li&gt;
&lt;li&gt;Generated content can be stored in the local SQLite history.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This architecture keeps the application lightweight and provides an alternative to depending entirely on a hosted AI API.&lt;/p&gt;

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

&lt;p&gt;Open innovation made it possible to experiment with an AI-powered business tool without building a language model from scratch or relying entirely on a proprietary AI service.&lt;/p&gt;

&lt;p&gt;Using an open-weight model with local inference offers several advantages:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1. Greater accessibility&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Developers and small businesses can experiment with AI tools without requiring a paid, hosted language-model API for every generation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2. More control over data&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;With local inference, prompts can be processed on the user's own machine rather than sent to a third-party model API. This depends on the application configuration and any other external services used.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Freedom to experiment&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Open-weight models allow developers to test different models, modify prompts, and explore alternative implementations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;4. A foundation for collaboration&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The project can be extended with new content templates, additional languages, improved prompting strategies, and support for other compatible models.&lt;/p&gt;

&lt;p&gt;Open innovation is not just about making software free. It is about making experimentation, adaptation, and collaboration more accessible.&lt;/p&gt;

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

&lt;p&gt;This project currently focuses on the application and its local AI integration. I do not have a shareable agent-session recording to include.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Primary challenge:&lt;/strong&gt; Hacktoberfest Open-Source AI Challenge Week 2 — Side Hustle.&lt;/p&gt;

&lt;p&gt;Additional partner categories can be added if the project meets their specific requirements.&lt;/p&gt;




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

&lt;p&gt;LocalBiz AI is a starting point, not a finished commercial product.&lt;/p&gt;

&lt;p&gt;Future improvements could include multilingual content generation, reusable brand profiles, downloadable marketing copy, support for additional local models, and content-quality evaluation.&lt;/p&gt;

&lt;p&gt;My next goal is to improve the generated content, test the application with real small-business owners, and use their feedback to guide development.&lt;/p&gt;

&lt;p&gt;Building practical AI tools is about more than getting a model to generate text. It is about making the output useful for real people.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Built with Python, FastAPI, Ollama, and Gemma 3 1B.&lt;/strong&gt; 🚀&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>ai</category>
    </item>
    <item>
      <title>EcoQuest AI: Touch Less Screen, Explore More Earth 🌿 | Building with Gemma for Hacktoberfest 2026</title>
      <dc:creator>Jitin Kumar</dc:creator>
      <pubDate>Fri, 09 Oct 2026 09:15:11 +0000</pubDate>
      <link>https://dev.to/__jitin__2102__/devto-post-title-ecoquest-ai-touch-less-screen-explore-more-earth-building-with-gemma-for-2dei</link>
      <guid>https://dev.to/__jitin__2102__/devto-post-title-ecoquest-ai-touch-less-screen-explore-more-earth-building-with-gemma-for-2dei</guid>
      <description>&lt;h1&gt;
  
  
  🌿 EcoQuest AI: Touch Less Screen. Explore More Earth.
&lt;/h1&gt;

&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;&lt;strong&gt;EcoQuest AI&lt;/strong&gt; is an open-source, AI-powered outdoor exploration app designed to help people spend less time scrolling and more time experiencing the world around them.&lt;/p&gt;

&lt;p&gt;Instead of using AI to keep people glued to their screens, EcoQuest uses it to encourage real-world exploration through small, achievable outdoor missions.&lt;/p&gt;

&lt;p&gt;With EcoQuest AI, users can:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🌱 &lt;strong&gt;Discover Nature Quests:&lt;/strong&gt; Explore outdoor activities such as identifying plants, observing birds, mapping natural sounds, and cleaning up litter.&lt;/li&gt;
&lt;li&gt;📓 &lt;strong&gt;Maintain a Field Journal:&lt;/strong&gt; Record outdoor observations and document experiences.&lt;/li&gt;
&lt;li&gt;🏆 &lt;strong&gt;Track Progress:&lt;/strong&gt; Earn points by completing missions and monitor exploration progress.&lt;/li&gt;
&lt;li&gt;🤖 &lt;strong&gt;Explore with AI:&lt;/strong&gt; Use a locally running Gemma model to generate personalized missions and ask questions about nature.&lt;/li&gt;
&lt;li&gt;🌍 &lt;strong&gt;Make a Difference:&lt;/strong&gt; Build awareness of the environment through simple, actionable outdoor activities.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;EcoQuest AI is designed for students, nature enthusiasts, and anyone who wants to build healthier digital habits while reconnecting with the natural world.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The core idea is simple: AI should encourage us to experience more of the real world, not just spend more time online.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;The application currently runs locally using Streamlit.&lt;/p&gt;

&lt;p&gt;To try it, follow the setup instructions in the repository README.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;A deployed demo or video walkthrough will be added when available.&lt;/em&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/Jitin2102/HactoberFest-Challenges-Week-1" rel="noopener noreferrer"&gt;https://github.com/Jitin2102/HactoberFest-Challenges-Week-1&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project includes the Streamlit application, outdoor quest system, field journal, progress tracking, and optional local Gemma integration.&lt;/p&gt;

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

&lt;p&gt;EcoQuest AI combines a lightweight Python application with open-weight AI.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Technology stack:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;**Python—Application logic&lt;/li&gt;
&lt;li&gt;**Streamlit—Interactive web interface&lt;/li&gt;
&lt;li&gt;**Gemma—Locally running AI model for mission generation and nature-related questions&lt;/li&gt;
&lt;li&gt;**Ollama—Local model inference&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;python-dotenv&lt;/strong&gt; — Environment-based configuration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The application provides ready-made outdoor missions without requiring an AI model. For AI-powered features, users can run Gemma locally through Ollama.&lt;/p&gt;

&lt;p&gt;This approach keeps the basic experience accessible while making AI features available without depending entirely on a hosted, proprietary API.&lt;/p&gt;

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

&lt;p&gt;AI should not be limited to centralized platforms or expensive API subscriptions.&lt;/p&gt;

&lt;p&gt;Open-weight models make it possible for developers to experiment, build locally running applications, and adapt AI-powered experiences to specific needs.&lt;/p&gt;

&lt;p&gt;For EcoQuest AI, local Gemma inference provides an opportunity to explore AI-assisted nature activities without making a proprietary cloud API the foundation of the application.&lt;/p&gt;

&lt;p&gt;Open innovation also makes experimentation more accessible to students and independent developers. Developers can inspect their implementation, learn from existing tools, contribute improvements, and build on shared technology.&lt;/p&gt;

&lt;p&gt;Most importantly, &lt;strong&gt;open AI gives us the freedom to explore different ways of using technology—including ways that encourage people to step away from it.&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;I don't have a published agent session to share yet.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Gemma:&lt;/strong&gt; Local AI integration using an open-weight Gemma model.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;EcoQuest AI is an early MVP, and there is plenty of room to grow.&lt;/p&gt;

&lt;p&gt;Future improvements could include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Persistent user profiles and mission history&lt;/li&gt;
&lt;li&gt;Nature identification from uploaded photographs&lt;/li&gt;
&lt;li&gt;Voice-based outdoor guidance&lt;/li&gt;
&lt;li&gt;Location-aware missions&lt;/li&gt;
&lt;li&gt;Offline-first mobile support&lt;/li&gt;
&lt;li&gt;Community challenges and collaborative environmental activities&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'd love to see contributors help turn this initial concept into a practical tool for reconnecting people with nature.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Less scrolling. More exploring. More Earth. 🌿&lt;/strong&gt;&lt;/p&gt;

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