<?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: Hari Narayana</title>
    <description>The latest articles on DEV Community by Hari Narayana (@hari_narayana_c93b47a6c4b).</description>
    <link>https://dev.to/hari_narayana_c93b47a6c4b</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%2F4156545%2F56e9e0c3-b450-4074-817a-ca683c6bfa7c.jpg</url>
      <title>DEV Community: Hari Narayana</title>
      <link>https://dev.to/hari_narayana_c93b47a6c4b</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/hari_narayana_c93b47a6c4b"/>
    <language>en</language>
    <item>
      <title>Jigra – A Distraction-Free Study Companion for Deep Work</title>
      <dc:creator>Hari Narayana</dc:creator>
      <pubDate>Fri, 02 Oct 2026 07:43:55 +0000</pubDate>
      <link>https://dev.to/hari_narayana_c93b47a6c4b/jigra-a-distraction-free-study-companion-for-deep-work-5048</link>
      <guid>https://dev.to/hari_narayana_c93b47a6c4b/jigra-a-distraction-free-study-companion-for-deep-work-5048</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Jigra (Focus Shield)&lt;/strong&gt; is an in-browser companion built to eliminate digital friction during study sessions without resorting to rigid website bans.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;&lt;em&gt;The Problem &amp;amp; Who I Built It For&lt;/em&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I built this for my friends and peers at college who spend long hours studying complex topics on YouTube—watching coding tutorials, math proofs, and engineering lectures. &lt;/p&gt;

&lt;p&gt;The issue isn't a lack of discipline; it’s an environment designed to distract. A friend opens a video to review a quick 10-minute explanation, only to be surrounded by clickbait thumbnails, sidebars, autoplay loops, and YouTube Shorts. Traditional website blockers take an all-or-nothing approach: they block YouTube entirely, cutting off access to the very educational content students need.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;&lt;em&gt;How Jigra Solves It&lt;/em&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Instead of blocking entire platforms, Jigra shapes the workspace around intentional study:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Distraction-Free Video Mode&lt;/strong&gt;: The moment a focus sprint starts, Jigra removes algorithmic home feeds, recommendation rails, sidebars, comments, and Shorts, leaving only the active lecture player visible.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ignis the Study Companion&lt;/strong&gt;: A lightweight floating companion anchored at the edge of the screen that tracks your focus sprint, daily streaks, and accumulated "Sparks". As you log more focus hours, Ignis evolves from a &lt;em&gt;Flame Sprout&lt;/em&gt; to a &lt;em&gt;Guardian Phoenix&lt;/em&gt; and &lt;em&gt;Celestial Sage&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Focus Command Center&lt;/strong&gt;: Flexible Pomodoro intervals (&lt;em&gt;Standard&lt;/em&gt;, &lt;em&gt;Deep&lt;/em&gt;, or &lt;em&gt;Ultra&lt;/em&gt;) tailored to different task depths.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;60-Second Micro-Break Arcade&lt;/strong&gt;: To prevent short study breaks from turning into prolonged social media scrolling, Jigra offers 60-second micro-games (like &lt;em&gt;Memory Matrix&lt;/em&gt;, &lt;em&gt;Sparkle Snake&lt;/em&gt;, and &lt;em&gt;Speed Code Typer&lt;/em&gt;) that automatically shut down after one minute so you can transition back into work.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cosmetics Bazaar&lt;/strong&gt;: A reward loop where accumulated Sparks can be redeemed for companion skins, hats, and aura effects.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Synthesized Audio&lt;/strong&gt;: Transition cues and subtle completion fanfares synthesized directly in code via the Web Audio API without extra network requests.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;em&gt;Demo&lt;/em&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/KkCn_zE1O4E" width="710" height="399"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;em&gt;Code&lt;/em&gt;&lt;/strong&gt;
&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/harinarayana1457-cmyk" rel="noopener noreferrer"&gt;
        harinarayana1457-cmyk
      &lt;/a&gt; / &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield" rel="noopener noreferrer"&gt;
        jigra-focus-shield
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Gamified Chrome MV3 focus extension &amp;amp; YouTube study shield: blocks Shorts &amp;amp; algorithmic rabbit holes, featuring an edge-snapping desktop companion, procedural Web Audio, and 60s micro-break games.
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;⚡ jigra — Focus Companion, YouTube Doom-Scroll Shield &amp;amp; Micro-Break Arcade&lt;/h1&gt;
&lt;/div&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Gamified Productivity Extension Built with Chrome Extension MV3, Isolated Shadow DOM &amp;amp; Procedural Web Audio&lt;/h3&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="https://developer.chrome.com/docs/extensions/mv3/intro/" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/0380b21959a2ecfa790f2e6dccf166388591633f4f2fc543d7ef1a0a46593024/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f506c6174666f726d2d4368726f6d65253230457874656e73696f6e2532304d56332d3432383546343f7374796c653d666f722d7468652d6261646765266c6f676f3d676f6f676c656368726f6d65266c6f676f436f6c6f723d7768697465" alt="Platform"&gt;&lt;/a&gt;
&lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/2d7e31363198f1a4e464c04876dc23d636e7e94fac9c8c0973e728e7bf7c0b80/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4a6176615363726970742d45533625324225323056616e696c6c612d4637444631453f7374796c653d666f722d7468652d6261646765266c6f676f3d6a617661736372697074266c6f676f436f6c6f723d626c61636b" alt="JavaScript"&gt;&lt;/a&gt;
&lt;a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/bfcd09572600dae4f539f79f23cfbda8ffa4c793ee853cff2889b12e18b6d994/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f417564696f2d50726f6365647572616c253230576562253230417564696f2d4646353732323f7374796c653d666f722d7468652d6261646765266c6f676f3d736f756e64636861727473266c6f676f436f6c6f723d7768697465" alt="Web Audio"&gt;&lt;/a&gt;
&lt;a href="https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_shadow_DOM" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/0cfa9ef7f15eb7c7e9a529007de8d272cb2d7b9e001e3761aebf246ab92f4280/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f55492d536861646f77253230444f4d253230253242253230476c6173736d6f72706869736d2d3943323742303f7374796c653d666f722d7468652d6261646765266c6f676f3d773363266c6f676f436f6c6f723d7768697465" alt="UI Technology"&gt;&lt;/a&gt;
&lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/d4e34c2b9664e635c8f00e0a873745a7b4aa015ab7b82dc697714399a336bde6/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f42726f77736572732d4368726f6d652532302537432532304272617665253230253743253230456467652532302537432532304172632d3030433742373f7374796c653d666f722d7468652d6261646765266c6f676f3d6272617665266c6f676f436f6c6f723d7768697465" alt="Compatibility"&gt;&lt;/a&gt;
&lt;a href="https://opensource.org/licenses/MIT" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/153acf9dff19deb8abfc598c53bac50a4ceae0f5c83a552711060d3d78d2c057/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d677265656e3f7374796c653d666f722d7468652d6261646765" alt="License: MIT"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;
  &lt;b&gt;Jigra&lt;/b&gt; is an all-in-one browser focus extension engineered with &lt;b&gt;Chrome Extension Manifest V3&lt;/b&gt;, procedural Web Audio synthesis, and isolated &lt;b&gt;Shadow DOM&lt;/b&gt; architecture. Designed specifically for students, researchers, and developers, Jigra halts algorithmic doom-scrolling (suppressing YouTube Shorts and recommendations), provides an edge-snapping interactive desktop study companion, and rewards completed Pomodoro sprints with 60-second micro-break games, currency (&lt;b&gt;Sparks&lt;/b&gt;), and companion evolutions
&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#key-features" rel="noopener noreferrer"&gt;✨ Key Features&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#system-architecture" rel="noopener noreferrer"&gt;🏛️ Architecture&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#installation-guide" rel="noopener noreferrer"&gt;🚀 Installation&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#micro-break-brain-resets" rel="noopener noreferrer"&gt;🎮 Micro-Break Arcade&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#economy-evolution--customization-bazaar" rel="noopener noreferrer"&gt;🛍️ Cosmetics &amp;amp; Evolution&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#project-structure" rel="noopener noreferrer"&gt;📁 Project Structure&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#testing-checklist" rel="noopener noreferrer"&gt;🧪 Testing Checklist&lt;/a&gt; • &lt;a href="https://github.com/harinarayana1457-cmyk/jigra-focus-shield#connect--contribute" rel="noopener noreferrer"&gt;🔗 Connect&lt;/a&gt;&lt;/p&gt;


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


&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🌟 Key Features&lt;/h2&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;1. 🛡️ Context-Aware YouTube Study Shield&lt;/h3&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Smart UI Stripper&lt;/strong&gt;: Automatically strips YouTube recommendation feeds (&lt;code&gt;#secondary&lt;/code&gt;), comments (&lt;code&gt;#comments&lt;/code&gt;), infinite home scroll walls, and end-screen suggested tiles…&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/harinarayana1457-cmyk/jigra-focus-shield" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;

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

&lt;p&gt;Jigra is developed as a client-side Chrome Extension using &lt;strong&gt;Manifest V3 (MV3)&lt;/strong&gt; and standard browser APIs.&lt;/p&gt;
&lt;h3&gt;
  
  
  &lt;strong&gt;&lt;em&gt;Architecture &amp;amp; Key Components&lt;/em&gt;&lt;/strong&gt;
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Closed Shadow DOM for UI Isolation&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
The companion widget and interface elements run inside a closed Shadow DOM container. This isolates Jigra's stylesheets from the host site, preventing layout breaks and ensuring consistent rendering on any web page.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Single-Page Application (SPA) Lifecycle Handling&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
YouTube does not perform standard full-page reloads when navigating between videos. Jigra binds to custom platform events (&lt;code&gt;yt-navigate-finish&lt;/code&gt;) combined with &lt;code&gt;MutationObserver&lt;/code&gt; instances to strip feeds and recommendation sidebars smoothly across dynamic page transitions.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Persistent Timing Across Service Worker Sleep Cycles&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Because Manifest V3 background workers go idle when inactive, standard JavaScript &lt;code&gt;setInterval&lt;/code&gt; timers are prone to stopping. Jigra synchronizes sprint state with &lt;code&gt;chrome.alarms&lt;/code&gt; and &lt;code&gt;chrome.storage.local&lt;/code&gt;, ensuring timers remain reliable when the background service worker wakes or sleeps.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Zero-Asset Web Audio API&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Instead of bundling external &lt;code&gt;.mp3&lt;/code&gt; or &lt;code&gt;.wav&lt;/code&gt; assets, auditory feedback and chimes are synthesized at runtime using custom oscillator nodes and gain envelopes.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  &lt;strong&gt;&lt;em&gt;Why Does Open Innovation Matter?&lt;/em&gt;&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;Open innovation and local-first architecture are crucial when building tools that touch everyday web browsing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Privacy&lt;/strong&gt;: A browser extension sits alongside a user's web activity. Building Jigra on open web standards without third-party analytics or closed tracking endpoints guarantees that personal study routines and viewing habits stay entirely on the user's machine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Modularity &amp;amp; Adaptability&lt;/strong&gt;: Every student's workflow is slightly different. Open-source development enables others to add custom DOM selectors for other learning platforms, tune sprint rules, or create their own micro-break challenges.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Independence from Gated Services&lt;/strong&gt;: Tools meant for students should not depend on fragile closed subscriptions or sudden API changes. Open code ensures long-term accessibility.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;em&gt;Session details and workflow logged with DevRelay.&lt;/em&gt;&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Primary Track&lt;/strong&gt;: Build for a Friend&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>hf26challenge</category>
    </item>
  </channel>
</rss>
