<?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: Srivibhav J</title>
    <description>The latest articles on DEV Community by Srivibhav J (@vibhav-j).</description>
    <link>https://dev.to/vibhav-j</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%2F4163269%2Fc32f9237-6de5-45c6-8255-6cf441fb6b1b.png</url>
      <title>DEV Community: Srivibhav J</title>
      <link>https://dev.to/vibhav-j</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/vibhav-j"/>
    <language>en</language>
    <item>
      <title>TrailEar (Tactical Bioacoustic Station • Edge Species Classifier)</title>
      <dc:creator>Srivibhav J</dc:creator>
      <pubDate>Wed, 07 Oct 2026 18:17:30 +0000</pubDate>
      <link>https://dev.to/vibhav-j/trailear-tactical-bioacoustic-station-edge-species-classifier-146h</link>
      <guid>https://dev.to/vibhav-j/trailear-tactical-bioacoustic-station-edge-species-classifier-146h</guid>
      <description>&lt;p&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;/p&gt;




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

&lt;p&gt;&lt;strong&gt;TrailEar&lt;/strong&gt; is an offline-first acoustic field companion designed to help you disconnect from screens and connect with the natural world around you.&lt;/p&gt;

&lt;p&gt;Instead of staring at a display while out on a hike, TrailEar runs silently in the background. It listens to the surrounding audio environment, recognizes bird calls in real time using local machine learning models, and automatically logs your species sightings with precise GPS coordinates. When your walk is done, a local AI synthesizes your acoustic encounters into a beautifully written field journal entry.&lt;/p&gt;

&lt;p&gt;It is built for hikers, casual birders, wildlife enthusiasts, and anyone who wants to spend more time outdoors without losing track of the wildlife species they hear along the way.&lt;/p&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Repository &amp;amp; Local Setup:&lt;/strong&gt; [&lt;a href="https://github.com/Vibhav-j/TrailEar" rel="noopener noreferrer"&gt;https://github.com/Vibhav-j/TrailEar&lt;/a&gt;]
&lt;em&gt;Screenshots:&lt;/em&gt;*&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;*[&lt;br&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%2Fo0arojxia1yt8lqry7du.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%2Fo0arojxia1yt8lqry7du.png" alt=" " width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;]*&lt;/p&gt;

&lt;p&gt;*[&lt;br&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%2Fztlxdhi9w2hh02xqzrm9.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%2Fztlxdhi9w2hh02xqzrm9.png" alt=" " width="800" height="400"&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%2F60kuahxi4s0bi32e00np.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%2F60kuahxi4s0bi32e00np.png" alt=" " width="800" height="448"&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%2Fc6846netsqjs1fb6zfr9.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%2Fc6846netsqjs1fb6zfr9.png" alt=" " width="800" height="430"&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%2Fljze939a4dumemhdkwv5.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%2Fljze939a4dumemhdkwv5.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;]*&lt;/p&gt;




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

&lt;p&gt;You can check out the full source code on GitHub:&lt;/p&gt;

&lt;p&gt;{&lt;a href="https://github.com/Vibhav-j/TrailEar" rel="noopener noreferrer"&gt;https://github.com/Vibhav-j/TrailEar&lt;/a&gt;}&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tech Stack Highlights:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Python, FastAPI, Uvicorn&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Audio Classification:&lt;/strong&gt; BirdNET (TensorFlow Lite / LiteRT)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Journal Generation:&lt;/strong&gt; Qwen 2.5 (Local LLM inference)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; HTML5, Tailwind CSS, Lucide Icons, JavaScript (No complex npm build required)&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;TrailEar was engineered around the constraint that deep nature trails rarely have reliable cell reception. Everything runs 100% locally on your machine:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Local Acoustic Classification:&lt;/strong&gt; We leverage the open-weight &lt;strong&gt;BirdNET&lt;/strong&gt; model running via TensorFlow Lite. It processes incoming audio streams in chunked windows, recognizing hundreds of bird species completely offline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GPS &amp;amp; Dynamic Location Filtering:&lt;/strong&gt; Using browser geolocation APIs and FastAPI endpoints, the system optionally filters species based on your real-world coordinates to increase classification accuracy for local wildlife.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local LLM Journal Synthesis:&lt;/strong&gt; Raw acoustic detections (timestamp, species name, confidence score) are passed to &lt;strong&gt;Qwen 2.5&lt;/strong&gt;. The LLM transforms structured data logs into a coherent, naturalistic field log entry that captures the mood of your walk. If you don't love the first entry, a single click re-rolls the narrative.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Tactile Dashboard:&lt;/strong&gt; Styled with Tailwind CSS and glassmorphism elements to feel like a modern piece of tactical field gear.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Zero Cloud Dependencies on the Trail:&lt;/strong&gt; Closed AI APIs require persistent internet access, making them useless in national parks, mountain valleys, or deep woods. Open models allow us to take AI into the backcountry.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Microphone &amp;amp; Location Privacy:&lt;/strong&gt; Audio recorded in the field stays entirely on your device. You don't have to send continuous room or trail audio and live GPS coordinates to third-party cloud servers.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  3. &lt;strong&gt;Community Extensibility:&lt;/strong&gt; Open innovation allows developers to adapt the classifier for regional bird species, integrate customized LLM prompts, or tweak confidence thresholds without hitches or API rate limits.
&lt;/h2&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Main Category:&lt;/strong&gt; Touch Grass (Week 1)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Partner Categories:&lt;/strong&gt; Open-Weight Models / Local AI Innovation&lt;/li&gt;
&lt;/ul&gt;

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