<?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: Vaidik Raval</title>
    <description>The latest articles on DEV Community by Vaidik Raval (@vaidikraval).</description>
    <link>https://dev.to/vaidikraval</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: Vaidik Raval</title>
      <link>https://dev.to/vaidikraval</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vaidikraval"/>
    <language>en</language>
    <item>
      <title>GrassRoot: The Local AI Pocket Plant That Forces You to Touch Grass 🌱</title>
      <dc:creator>Vaidik Raval</dc:creator>
      <pubDate>Sun, 11 Oct 2026 17:33:17 +0000</pubDate>
      <link>https://dev.to/vaidikraval/grassroot-the-local-ai-pocket-plant-that-forces-you-to-touch-grass-55dk</link>
      <guid>https://dev.to/vaidikraval/grassroot-the-local-ai-pocket-plant-that-forces-you-to-touch-grass-55dk</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;h3&gt;
  
  
  The Developer Dilemma
&lt;/h3&gt;

&lt;p&gt;We have all lived through this scenario:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;10:00 AM:&lt;/strong&gt; &lt;em&gt;"I'm just going to fix this one quick CSS centering bug or review this pull request."&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;3:45 PM:&lt;/strong&gt; You blink. Your eyes burn like embers, you have 38 browser tabs open, and your spine is shaped like a question mark.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Standard break reminders simply don't work. A sterile popup notification like &lt;em&gt;"You have been active for 45 minutes"&lt;/em&gt; is instantly swiped away without a second thought.&lt;/p&gt;

&lt;h3&gt;
  
  
  Meet GrassRoot 🌱
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;GrassRoot&lt;/strong&gt; is an open-source, local-AI-powered Manifest V3 Chrome Extension featuring an expressive desktop houseplant mascot that lives right in your browser toolbar.&lt;/p&gt;

&lt;p&gt;Instead of boring clinical alerts, GrassRoot:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Monitors screen fatigue in real time&lt;/strong&gt;: It keeps watch over your session duration.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Has feelings &amp;amp; visual states&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;🌱 &lt;strong&gt;Sprouting Fresh&lt;/strong&gt; (0–24m): Cheerful green leaves swaying rhythmically, perky stem, and sparkling eyes.&lt;/li&gt;
&lt;li&gt;🥱 &lt;strong&gt;Getting Thirsty&lt;/strong&gt; (25–44m): Drooping leaves, drowsy eyelids, and warning progress gauge.&lt;/li&gt;
&lt;li&gt;🥀 &lt;strong&gt;Parched &amp;amp; Wilting&lt;/strong&gt; (45m+ threshold): Slumps over the pot edge, turns an olive-brown tone, and triggers an urgent desktop alert: &lt;em&gt;"🌱 I am wilting! Step outside and touch grass right now!"&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Contextual AI Quests (Powered by Local Ollama)&lt;/strong&gt;: It inspects what you're currently working on (e.g., debugging React code on GitHub, watching tutorials, or writing documentation) and prompts a local open-source LLM (&lt;code&gt;phi3&lt;/code&gt; or &lt;code&gt;llama3&lt;/code&gt;) to craft a punchy, sarcastic 2-sentence outdoor micro-adventure.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Instant Dopamine on Completion&lt;/strong&gt;: When you step outside and click &lt;strong&gt;"🌱 Done!"&lt;/strong&gt;, the plant blooms with pink flowers, bursts into colorful particle confetti 🎉, and plays a soothing synthesizer nature chime 🎵!&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Who Is It For?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Developers, students, and writers&lt;/strong&gt; prone to hours of hyperfocus.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Privacy-conscious users&lt;/strong&gt; who want intelligent assistance without sending their browsing history to commercial cloud APIs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Anyone whose houseplant has died&lt;/strong&gt; and needs a digital one that actually protects their health!&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Here is how the dynamic SVG mascot transforms in real time as screen time advances:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;State&lt;/th&gt;
&lt;th&gt;Screen Fatigue&lt;/th&gt;
&lt;th&gt;Plant Mascot Reaction&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🌱 Sprouting Fresh&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;0 – 24 mins&lt;/td&gt;
&lt;td&gt;Radiant emerald leaves swaying in the virtual breeze; gentle smiling expression.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🥱 Getting Thirsty&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;25 – 44 mins&lt;/td&gt;
&lt;td&gt;Leaves tilt downward; eyelids get heavy; reminder to wrap up current sprint.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🥀 Parched &amp;amp; Wilting&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;45+ mins&lt;/td&gt;
&lt;td&gt;Plant slumps over pot edge, trembling with thirst; sends desktop alert to touch grass.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;🌸 Thriving &amp;amp; Blooming&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Quest Complete!&lt;/td&gt;
&lt;td&gt;Flowers burst into bloom, golden aura ring appears, celebratory confetti &amp;amp; chimes!&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  🎮 Live Interaction:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Poke the plant&lt;/strong&gt;: Click the plant pot anytime! It performs an animated spring wobble, emits a playful synth pop sound, and delivers witty remarks like:
&amp;gt; &lt;em&gt;"Hey! Don't poke me, go poke some actual moss outside!"&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Try a generated quest&lt;/strong&gt;:
&amp;gt; &lt;em&gt;"Your uncommitted git branch won't evaporate, but my leaves will. Step onto your porch, locate a real tree, and explain your bug to a leaf for 2 minutes."&lt;/em&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;(Screenshots and interactive demo available in the repository!)&lt;/em&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/Vaidik-Raval" rel="noopener noreferrer"&gt;
        Vaidik-Raval
      &lt;/a&gt; / &lt;a href="https://github.com/Vaidik-Raval/Meet-GrassRoot" rel="noopener noreferrer"&gt;
        Meet-GrassRoot
      &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;🌱 GrassRoot: The Local AI Touch-Grass Companion&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;An open-source Manifest V3 Chrome Extension powered by local Ollama AI models. It monitors screen fatigue, features an animated desktop plant mascot that wilts when you work too long, and generates witty, contextual outdoor micro-quests to get you away from the screen and into the real world.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;✨ Features&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;🌿 &lt;strong&gt;Dynamic Animated Plant Mascot&lt;/strong&gt;: An expressive SVG houseplant living in your toolbar that shifts through 4 distinct visual states
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sprouting Fresh&lt;/strong&gt; (Hydrated &amp;amp; perky, leaves gently swaying)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Getting Thirsty&lt;/strong&gt; (25–44 minutes of active screen time)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Parched &amp;amp; Wilting&lt;/strong&gt; (45+ minutes, leaves slumped, begging for outdoor air)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Thriving &amp;amp; Blooming&lt;/strong&gt; (Sprouts flowers and golden aura after completing a quest)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;🤖 &lt;strong&gt;100% Local &amp;amp; Private AI Integration&lt;/strong&gt;: Connects directly to &lt;a href="https://ollama.com/" rel="nofollow noopener noreferrer"&gt;Ollama&lt;/a&gt; running on your machine (&lt;code&gt;http://localhost:11434&lt;/code&gt;). Zero cloud subscriptions, zero telemetry, full privacy.&lt;/li&gt;
&lt;li&gt;🎯 &lt;strong&gt;Context-Aware Micro-Quests&lt;/strong&gt;: Inspects active tab themes…&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/Vaidik-Raval/Meet-GrassRoot" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;The entire codebase is 100% open-source under the MIT License:&lt;br&gt;
👉 &lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/Vaidik-Raval/Meet-GrassRoot" rel="noopener noreferrer"&gt;https://github.com/Vaidik-Raval/Meet-GrassRoot&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Project Architecture:
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Meet-GrassRoot/
├── manifest.json       # Chrome Manifest V3 declaration &amp;amp; permissions
├── background.js       # Background service worker (timers, alarms, Ollama fetch)
├── content.js          # Lightweight tab context &amp;amp; topic keyword extractor
├── popup.html          # Dark-forest glassmorphism UI &amp;amp; interactive SVG mascot
├── popup.js            # State machine, Web Audio API synth, confetti physics
├── styles.css          # Design tokens, swaying &amp;amp; drooping CSS keyframes
├── icons/              # Extension icons (16x16, 48x48, 128x128)
└── README.md           # Quick setup &amp;amp; Ollama CORS guide
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;
&lt;h3&gt;
  
  
  1. Local Open-Source AI (Ollama + phi3 / llama3)
&lt;/h3&gt;

&lt;p&gt;Rather than depending on proprietary cloud APIs, GrassRoot connects directly to a local &lt;a href="https://ollama.com/" rel="noopener noreferrer"&gt;Ollama&lt;/a&gt; instance at &lt;code&gt;http://localhost:11434&lt;/code&gt;.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Model of Choice&lt;/strong&gt;: Microsoft's &lt;code&gt;phi3&lt;/code&gt; (default) or Meta's &lt;code&gt;llama3&lt;/code&gt;. &lt;code&gt;phi3&lt;/code&gt; runs locally with sub-second latency and delivers razor-sharp, sarcastic humor without burning CPU/GPU cycles.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dynamic System Prompting&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;systemPrompt&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;`You are GrassRoot, a sarcastic yet loving pocket houseplant living in a browser extension. 
  The user has been staring at a screen too long. 
  Generate a short, punchy, witty 2-sentence outdoor micro-quest to force them to touch grass right now. 
  Keep it actionable (e.g., walk barefoot on grass for 2 minutes, look at a cloud, stretch outside). 
  Do not use bullet points or preamble. Deliver only the witty quest.`&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  2. Context-Aware In-Page Intelligence (&lt;code&gt;content.js&lt;/code&gt;)
&lt;/h3&gt;

&lt;p&gt;When you request a quest, &lt;code&gt;content.js&lt;/code&gt; safely extracts high-level metadata (domain name, page category, and non-sensitive topic keywords) without collecting any private information:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you're on &lt;strong&gt;GitHub / StackOverflow&lt;/strong&gt;, the prompt knows you're knee-deep in code and suggests a &lt;em&gt;"debugging stroll"&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;If you're on &lt;strong&gt;YouTube / Netflix&lt;/strong&gt;, it urges you to trade pixel streams for real sky horizons.&lt;/li&gt;
&lt;li&gt;If you're browsing late at night, it crafts a quest tailored to cool evening air.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  3. Conquering Chrome Extension CORS with Ollama
&lt;/h3&gt;

&lt;p&gt;Because Chrome Extensions execute network requests from a unique &lt;code&gt;chrome-extension://&amp;lt;id&amp;gt;&lt;/code&gt; origin, standard local endpoints block them by default. &lt;/p&gt;

&lt;p&gt;To solve this, GrassRoot provides built-in diagnostics and straightforward setup instructions:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Windows PowerShell:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;OLLAMA_ORIGINS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"chrome-extension://*"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ollama&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;serve&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;span class="c"&gt;# macOS / Linux:&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="n"&gt;OLLAMA_ORIGINS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"chrome-extension://*"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ollama&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;serve&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Built-in Reliability&lt;/em&gt;: If Ollama is offline or warming up, GrassRoot gracefully switches to a curated &lt;strong&gt;Offline Quest Vault&lt;/strong&gt; so the extension remains completely functional without throwing blank screens!&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Zero-Dependency Audio &amp;amp; Confetti
&lt;/h3&gt;

&lt;p&gt;To keep the extension lightweight and instantaneous:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sound Synthesis&lt;/strong&gt;: Uses the native browser &lt;code&gt;AudioContext&lt;/code&gt; to procedurally generate soothing harp arpeggio chords upon quest completion and playful pops when poked. Zero external &lt;code&gt;.mp3&lt;/code&gt; files required!&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Particle Confetti&lt;/strong&gt;: Built with an optimized HTML5 Canvas overlay running smooth 60 FPS physics.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Open innovation is the cornerstone of why GrassRoot can exist in this form:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Absolute User Privacy&lt;/strong&gt;: Screen fatigue extensions need to understand what you're doing to make relevant recommendations. With open-weight local AI, &lt;strong&gt;your browsing habits never leave your computer&lt;/strong&gt;. No telemetry, no logs, and no cloud data harvesting.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Financial Barriers&lt;/strong&gt;: Users don't need credit cards, API keys, or recurring subscription fees. Anyone with a laptop can install Ollama, pull a model, and run their own personal assistant for free forever.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;True Offline Resilience&lt;/strong&gt;: Cloud APIs fail during outages, rate limits, or network drops. Open-source local models run on a plane, in a cabin, or during power fluctuations without breaking a sweat.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Community Extensibility&lt;/strong&gt;: Because the models, extension code, and prompts are completely open, contributors can easily plug in fine-tuned botanical personas, multi-language support, or new mascots (cacti, bonsai trees, succulents).&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This project was ideated, planned, architected, and coded with pairing from an agentic AI coding environment. &lt;/p&gt;

&lt;p&gt;Key engineering highlights accomplished during the session:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designed Manifest V3 service worker lifecycle with &lt;code&gt;chrome.alarms&lt;/code&gt; to circumvent MV3 background script idle terminations.&lt;/li&gt;
&lt;li&gt;Created standalone, self-generating SVG assets and PNG icon builders.&lt;/li&gt;
&lt;li&gt;Handled Chrome Extension cross-origin headers (&lt;code&gt;OLLAMA_ORIGINS&lt;/code&gt;) and implemented failover mechanisms for local LLM daemon downtimes.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Main Track:&lt;/strong&gt; Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Partner Categories / Highlights:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;Best Use of Open-Source / Open-Weight AI (Ollama + &lt;code&gt;phi3&lt;/code&gt; / &lt;code&gt;llama3&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Most Creative Real-World Health &amp;amp; Wellness Hack&lt;/li&gt;
&lt;li&gt;Best Local-First &amp;amp; Privacy-Preserving Extension&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Quick Start (Run It in 60 Seconds)
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Clone the Repo&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   git clone https://github.com/Vaidik-Raval/Meet-GrassRoot.git
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Start Ollama with CORS&lt;/strong&gt;:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight powershell"&gt;&lt;code&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="nv"&gt;$&lt;/span&gt;&lt;span class="nn"&gt;env&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="nv"&gt;OLLAMA_ORIGINS&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"chrome-extension://*"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;ollama&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="nx"&gt;serve&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Load into Chrome&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;Open &lt;code&gt;chrome://extensions/&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Enable &lt;strong&gt;Developer mode&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Click &lt;strong&gt;Load unpacked&lt;/strong&gt; and select the &lt;code&gt;Meet-GrassRoot&lt;/code&gt; folder!&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;&lt;em&gt;Did you step outside today? Drop a ⭐ on &lt;a href="https://github.com/Vaidik-Raval/Meet-GrassRoot" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt; and let me know in the comments what wild outdoor quest GrassRoot generated for you!&lt;/em&gt; 🌿&lt;/p&gt;

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