<?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: Tushar Singh</title>
    <description>The latest articles on DEV Community by Tushar Singh (@tushaar05).</description>
    <link>https://dev.to/tushaar05</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3978141%2F727a1620-1606-45b8-82ca-9733be4101d8.gif</url>
      <title>DEV Community: Tushar Singh</title>
      <link>https://dev.to/tushaar05</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/tushaar05"/>
    <language>en</language>
    <item>
      <title>Sit Spot: Listen First, Then Check 🌿</title>
      <dc:creator>Tushar Singh</dc:creator>
      <pubDate>Sat, 10 Oct 2026 21:00:43 +0000</pubDate>
      <link>https://dev.to/tushaar05/sit-spot-listen-first-then-check-3h57</link>
      <guid>https://dev.to/tushaar05/sit-spot-listen-first-then-check-3h57</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Sit Spot&lt;/strong&gt; is an open-source, screen-minimal outdoor listening companion built on a simple premise: &lt;strong&gt;"Listen first. Then check."&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Most nature apps do the opposite of getting you outdoors: they encourage you to stare at a glowing screen, hunt for AR badges, or wave your camera at bushes. Sit Spot is designed to make the screen the shortest, quietest part of the experience:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Choose a duration&lt;/strong&gt;: Pick a short outdoor listening session (30 seconds to 5 minutes).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;True Dark Listening Mode&lt;/strong&gt;: Put your phone face-down or in your pocket. The screen switches to a distraction-free dark interface with zero flashing graphics or notifications, recording ambient surroundings while you pay attention to the trees, wind, water, and wildlife around you.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Listen First, Guess First&lt;/strong&gt;: When the session finishes, you write down what acoustic textures you noticed &lt;em&gt;before&lt;/em&gt; looking at any automated output.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local On-Device AI Analysis&lt;/strong&gt;: Your recording is analyzed completely on your machine using an open-weight acoustic model—without sending a single byte of audio to the cloud.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Timeline Reveal &amp;amp; Snippet Playback&lt;/strong&gt;: Compare your observations with timestamped sound events, inspect honest qualitative confidence bands, and tap individual detections to play back exact audio snippets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grounded Field Journal&lt;/strong&gt;: Receive a deterministic reflection contrasting your notes with acoustic signals, add personal field notes, and save or export your private journal locally.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Who it's for:&lt;/strong&gt; Naturalists, hikers, birders, campers, students, and anyone experiencing digital fatigue who wants an excuse to sit quietly outside and reconnect with sensory observation.&lt;/p&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/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh536adzmpibgxf4pv4hi.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fh536adzmpibgxf4pv4hi.gif" alt="Sit Spot Demo Walkthrough" width="720" height="467"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;🎥 &lt;strong&gt;Full Video Recording&lt;/strong&gt;: &lt;a href="https://github.com/tushaar-05/TouchGrass/blob/main/assets/sit-spot-demo.mp4" rel="noopener noreferrer"&gt;Watch sit-spot-demo.mp4 on GitHub&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  What the demo shows:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Screen-Off Nature Listening&lt;/strong&gt;: Launching a session outdoors with the distraction-free dark screen timer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Listen-First Reflection&lt;/strong&gt;: Entering human field observations before revealing any AI predictions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local ONNX Inference&lt;/strong&gt;: Offline classification and temporal event timeline generated on-device with YAMNet without sending audio to the cloud.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Field Journal &amp;amp; History&lt;/strong&gt;: Comparing human notes with detections, playing timestamp snippets, and exporting the session log.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;The entire codebase is open source under the &lt;strong&gt;Apache-2.0&lt;/strong&gt; license:&lt;/p&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/tushaar-05" rel="noopener noreferrer"&gt;
        tushaar-05
      &lt;/a&gt; / &lt;a href="https://github.com/tushaar-05/TouchGrass" rel="noopener noreferrer"&gt;
        TouchGrass
      &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;Sit Spot 🌲&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Listen first. Then check."&lt;/strong&gt;
An open-source, screen-minimal AI nature listening companion.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Sit Spot is a local-first nature listening application designed to encourage people to spend time outdoors paying attention to their natural surroundings. The user selects a listening duration (from 30 seconds up to 5 minutes), puts their device aside, and listens without screen distractions. Afterward, the user writes down what they observed before revealing a timestamped timeline of acoustic detections analyzed locally on-device.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Demo Walkthrough&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a rel="noopener noreferrer" href="https://github.com/tushaar-05/TouchGrass/assets/sit-spot-demo.gif"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fraw.githubusercontent.com%2Ftushaar-05%2FTouchGrass%2FHEAD%2Fassets%2Fsit-spot-demo.gif" alt="Sit Spot Demo Preview"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Full demo recording (62s): &lt;a href="https://github.com/tushaar-05/TouchGrass/assets/sit-spot-demo.mp4" rel="noopener noreferrer"&gt;assets/sit-spot-demo.mp4&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;What Sit Spot Does&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Distraction-Free Outdoor Listening&lt;/strong&gt;: A true dark screen mode minimizes screen glare and notifications while you sit quietly outdoors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Listen-First Methodology&lt;/strong&gt;: You record your observations first before viewing AI results to cultivate active sensory awareness.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;100% Local On-Device AI&lt;/strong&gt;: Powered by Google YAMNet (Apache-2.0) running natively on Apple Silicon via ONNX Runtime with ARM64 NEON optimization.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Honest Detections &amp;amp; Score&lt;/strong&gt;…&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/tushaar-05/TouchGrass" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;Repository:&lt;/strong&gt; &lt;a href="https://github.com/tushaar-05/TouchGrass" rel="noopener noreferrer"&gt;https://github.com/tushaar-05/TouchGrass&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Full automated test suite (48 tests, 100% passing across audio validation, aggregation, and API routes).&lt;/li&gt;
&lt;li&gt;Verified model weights provenance and SHA-256 checksums documented in &lt;code&gt;MODELS.md&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Strict local-only privacy pledge in &lt;code&gt;PRIVACY.md&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Sit Spot is built around a local open-source AI architecture that requires zero external APIs:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Open-Source AI Model: Google YAMNet (Apache-2.0)
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Architecture&lt;/strong&gt;: MobileNetV1 depthwise-separable convolutional backbone trained on the AudioSet ontology (521 acoustic event classes, including &lt;em&gt;Bird, Bird vocalization, Wind, Rain, Stream, Water, Insects, Animals&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Inference Runtime&lt;/strong&gt;: Converted to ONNX and executed natively via &lt;strong&gt;ONNX Runtime&lt;/strong&gt; on Apple Silicon M4 using ARM64 NEON CPU vectorization.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Extreme Efficiency&lt;/strong&gt;: Evaluates a 3-second recording in &lt;strong&gt;10.3 ms&lt;/strong&gt; (~200× faster than real time), with a model weight footprint of just 15.3 MB and &amp;lt;60 MB RAM usage.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Audio Preprocessing &amp;amp; Hardened Validation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Formats&lt;/strong&gt;: Direct in-memory parsing for 16 kHz WAV via &lt;code&gt;soundfile&lt;/code&gt;, plus sandboxed FFmpeg fallback (&lt;code&gt;shell=False&lt;/code&gt;, 15s timeout) for browser-recorded WebM (Opus) and MP4/M4A.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Safety Bounds&lt;/strong&gt;: Enforces a strict 25 MB file limit, 1.0s to 300.0s duration bounds, and header magic-byte verification (&lt;code&gt;RIFF&lt;/code&gt;, &lt;code&gt;0x1A45DFA3&lt;/code&gt;, &lt;code&gt;ftyp&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Acoustic Integrity&lt;/strong&gt;: Normalizes to 16 kHz mono float32 in &lt;code&gt;[-1.0, 1.0]&lt;/code&gt; without synthetic amplification (avoiding boosting sensor noise into false-positive nature detections). Flags silence ($\text{RMS} &amp;lt; -80\text{ dBFS}$) and performs clipping diagnostics (&amp;gt;5% warning, &amp;gt;30% distortion rejection).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Temporal Window Aggregation &amp;amp; Honest Calibration
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;YAMNet operates on 0.975s sliding windows with 50% overlap (0.4875s hop). Without aggregation, a bird call triggers redundant alerts across every frame.&lt;/li&gt;
&lt;li&gt;Our custom &lt;code&gt;aggregate_detections()&lt;/code&gt; engine clusters contiguous windows of the same label, preserves the peak activation score, and clamps timestamps strictly to the real recording duration—ensuring internal zero-padding is never presented as observed sound.&lt;/li&gt;
&lt;li&gt;Rather than misleading users with pseudo-probabilities, raw activation scores are mapped to documented qualitative bands:

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;STRONG_SIGNAL&lt;/code&gt; ($\ge 0.50$)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;MODERATE_SIGNAL&lt;/code&gt; ($\ge 0.25$)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;SUGGESTIVE_TRACE&lt;/code&gt; ($\ge 0.10$)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Grounded Reflection Engine
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;A deterministic rule-based reflection engine compares user guesses with detected sound classes. It highlights acoustic alignments and notes subtle sounds that fell below model thresholds—guaranteeing zero AI hallucinations of animals or weather.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Frontend
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Built with &lt;strong&gt;React 18&lt;/strong&gt;, &lt;strong&gt;Vite&lt;/strong&gt;, and &lt;strong&gt;TypeScript&lt;/strong&gt;, styled using semantic CSS design tokens inspired by natural history field notebooks (parchment surfaces, restrained moss-green accents, and a true dark listening mode).&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Open innovation is what made Sit Spot possible in ways a closed API model never could:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Backcountry Offline Independence&lt;/strong&gt;: Nature doesn't have reliable 5G cell towers. If this app relied on OpenAI, Claude, or proprietary cloud inference, it would fail the moment you stepped onto a forest trail or deep into a national park. Because YAMNet runs on-device, Sit Spot functions identically with Wi-Fi disabled in airplane mode.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Absolute Privacy in Shared Spaces&lt;/strong&gt;: Outdoor field recordings can inadvertently capture nearby human speech or private conversations. Uploading unvetted audio to commercial clouds poses severe privacy risks. In Sit Spot, audio stays in memory and on local disk; no telemetry or audio bytes ever leave your device.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Marginal Cost&lt;/strong&gt;: Cloud audio transcription and multimodal APIs carry per-minute billing that makes screen-free exploration expensive. Sit Spot costs $0.00 to run forever.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Honest Science Over Hype&lt;/strong&gt;: Proprietary classification APIs often present black-box "99% confidence" figures that mislead users into thinking an exact bird species was positively identified. Open model cards and transparent AudioSet ontologies allowed us to document exact limitations and implement honest qualitative score bands.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This project was built pair-programming with &lt;strong&gt;Google Antigravity&lt;/strong&gt; on a MacBook Pro (Apple Silicon M4). The agent session navigated model provenance verification, audio buffer mathematics, and test-driven architecture across test suites:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Milestone 1&lt;/strong&gt;: Scaffolding, Apache-2.0 licensing, and verified YAMNet model card SHA-256 checksums.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Milestone 2&lt;/strong&gt;: Secure audio validation, format magic-byte sniffing, and sandboxed FFmpeg decoders.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Milestone 3&lt;/strong&gt;: Concrete ONNX adapter, temporal window aggregation, and real offline inference integration.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Milestone 4 &amp;amp; Final&lt;/strong&gt;: Complete React user journey, guess-first interaction, snippet audio playback, and field journal storage.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Overall Winner&lt;/strong&gt; (Hacktoberfest Week 1: Touch Grass)&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Listen first. Then check. Go outside and sit in your spot today!&lt;/em&gt;&lt;/p&gt;

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