DEV Community

Sohaib Tausif
Sohaib Tausif

Posted on

Sit Spot: A Screenless, Open-Weight Nature-Journaling Companion That Runs in Your Pocket

Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass Submission 🌿

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass

What I Built

Most modern outdoor and nature apps inadvertently trap you in your screen. You hear a rustle or spot plumage in the canopy, but instead of observing the bird, you pull out your phone, fiddle with camera zoom, squint against sun glare, and scroll through image matching lists. By the time you look back up, the bird has flown away. The forest was reduced to a glowing rectangular viewfinder.

Sit Spot reverses this interaction entirely.

Sit Spot is an open-weight, offline-first bioacoustic companion designed for the classic naturalist practice of the "Sit Spot": picking one quiet place outdoors, sitting still, and developing deep situational awareness.

  1. Pick your spot: Creek bend, pine ridge, backyard garden edge, or quiet meadow.
  2. Press Start and pocket your phone: Lock the screen and put the device in your pocket. Screen time to begin is under 5 seconds.
  3. Listen with a single earbud: Sit Spot listens through the microphone in 3-second audio windows, analyzes avian vocalizations locally, and strictly rate-limits guidance (at most one whispered prompt every 2 to 3 minutes): > "A Black-capped Chickadee has been calling from the west. Look gently toward the dense birch shrubs."
  4. Whispered talk-back notes: If you spot an interesting behavior or animal, whisper into your mic ("Saw it - crest raised, perched on dead birch branch").
  5. Automated Field Journal: When you return and tap Stop, a comprehensive field journal entry formatted in clean Markdown is generated immediately on-device, complete with weather trends, bioacoustic detections, direction bearings, observer notes, and longitudinal return insights.

Total screen time for an entire 20-minute session: under 15 seconds.

Demo

Sit Spot runs 100% locally on laptops, Raspberry Pi, and mobile devices:

  • Web Companion (http://localhost:8000): A distraction-free, fluid interface with instant Fullscreen (F key shortcut) and an Ambient Focus / Screen Lock overlay that allows you to put your phone in your pocket with zero battery waste or glare.
  • Narrator Audition Studio: Includes 10 pre-rendered sample bioacoustic narration clips showcasing 6 distinct guide personalities:
    • Calm Naturalist: Grounded, mindful species observation.
    • Poetic & Mindful: Meditative awareness of wind, rustle, and bird song.
    • Spotting Game for Kids: Playful scout challenges engaging younger explorers.
    • Deep Woods Ranger: Crisp directional alerts for backcountry trails.
    • Dawn Chorus: Gentle awakening prompts tuned for early morning activity.
    • Mindful Dusk: Low-cadence cues for evening twilight settling.
  • Terminal CLI Companion: Pure distraction-free command-line interface for field laptops, Android Termux, and headless field stations.
  • Harmonic Chimes: Every whisper is primed with a subtle harmonic chime (380 Hz to 698 Hz) that catches your ear before voice delivery.

Sample Generated Field Journal Entry

# Sit Spot Journal - Creek Bend Oak
**Date:** Sunday, October 11, 2026 • **Duration:** 20.0 min

## Environmental Sensor Log
- **Barometric Pressure:** 1012.4 hPa (Rising steadily (+1.2 hPa))
- **Ambient Temp:** 17.5 C / 63.5 F
- **Screenless Quiet Time:** 20.0 minutes with zero phone screen interaction

## Bioacoustic Detections
| Species | Call Type | Bearing | Activity Count | Confidence |
| :--- | :--- | :--- | :---: | :---: |
| Black-capped Chickadee | Fee-bee song | West | 2 | 86% |
| Tufted Titmouse | Peter-peter echo | Northeast | 1 | 89% |
| Downy Woodpecker | Drumming percussion | Northwest | 1 | 81% |

### Whispered Guidance Delivered
1. *"A Black-capped Chickadee is calling from the west. Look mid-canopy."*

## Field Notes
- *"Noticed chickadee foraging alongside a titmouse in dense birch branches."*

## Longitudinal Memory & Seasonal Insights
> Detected Black-capped Chickadee for the first time at Creek Bend Oak.
Enter fullscreen mode Exit fullscreen mode

Code

The complete source code for Sit Spot is organized into an offline-first modular architecture:

  • sitspot/audio_generator.py: Harmonic chime synthesis and offline voice narration engine.
  • sitspot/nudge_engine.py: Rate-limited bioacoustic guide generating directional prompts across 6 personality styles.
  • sitspot/session_controller.py: Screenless session lifecycle controller, background audio queue, and listener pipeline.
  • sitspot/journal_engine.py: Longitudinal memory synthesizer producing formatted Markdown journals.
  • sitspot/server.py: FastAPI server serving static audio clips and distraction-free web companion.
  • sitspot/web/index.html: Responsive fullscreen web application with Web Audio API controller and zero AI-cliche emojis.
  • sitspot/cli.py & menu.py: Interactive distraction-free terminal launcher.
# Clone and run locally:
git clone https://github.com/sohaibtausif141/sit-spot.git
cd sit-spot
pip install -r requirements.txt
python run_server.py
Enter fullscreen mode Exit fullscreen mode

How I Built It

Sit Spot is built from the ground up around open-source AI and on-device execution:

  1. 3-Second Bioacoustic Audio Analysis:
    The audio listener ingests ambient environmental microphone audio in 3-second sliding windows. It interfaces with open-weight acoustic classification architectures (BirdNET / Perch open-weight models), extracting frequency bands, calling rhythms, estimated cardinal directions, and confidence scores.

  2. Rate-Limited Heuristic & Open SLM Nudge Synthesis:
    Rather than constantly streaming audio to a server, Sit Spot applies an ecological rate-limiter (maximum 1 whisper every 120 to 180 seconds). A local small language model (Gemma 3 or Qwen 2.5 1.5B via llama.cpp or an offline heuristic synthesizer) crafts concise, unobtrusive directions tailored to the selected narrator style (Calm, Poetic, Kids Game, Ranger, Dawn, or Dusk).

  3. Offline Harmonic Voice Whisper Pipeline:
    Whispered prompts are paired with offline-generated harmonic sine-wave chimes (380 Hz to 698 Hz) and synthesized locally via Piper TTS / system speech synthesis. Audio is cached and streamed over local HTTP to the user's earbuds, avoiding browser autoplay lockouts through gesture priming.

  4. Distraction-Free Fullscreen Experience:
    Built with FastAPI, HTML5 Audio, Web Audio API, and native system typography. Emojis and visual clutter were stripped out to ensure the device never competes with the natural world for the user's attention.

Why Does Open Innovation Matter?

Open innovation is not just a preference for Sit Spot - it is the foundational requirement that makes the project possible:

  1. Zero Cellular Signal on Nature Trails:
    Deep ravines, wooded ridges, and dense forest canopies have zero LTE or 5G coverage. Closed-source cloud APIs (OpenAI, Claude, cloud speech services) become useless paperweights the moment you step off the trailhead. Open-weight models running on local hardware (laptops, Raspberry Pi, or phone Termux environments) provide 100% reliability offline.

  2. Radical Solitude & Location Privacy:
    Naturalists and birders protect their sensitive observation locations, secret sit spots, and nesting areas. Proprietary cloud apps collect telemetry, coordinates, and microphone audio. Sit Spot keeps every audio chunk, whisper, and coordinate strictly on the user's device.

  3. Zero Battery Drain from Cellular Radio Transmission:
    Transmitting uncompressed audio to cloud endpoints continuously drains mobile battery in under an hour. Running local inference allows the device to stay in Airplane Mode with radios sleeping, ensuring battery lasts throughout day-long hikes.

  4. Reversing the Screen Trap:
    Open models can be deployed in lightweight, screenless daemon processes that communicate exclusively via whispered audio, freeing humanity from the glowing rectangle.

My Agent Session

This project was built collaboratively with Antigravity / Gemini CLI using the DevRelay toolkit to manage session tracking, audio engine debugging, and challenge drafting.

You can inspect the full agent pairing session transcript right here:

Sit Spot: Building an Open-Weight Screenless Nature Companion
You

<USER_REQUEST>
make it easier to uuse and also utlize full screen and make the interface better and remove unnecessary emoji which make it look like AI build and use generic fonts
</USER_REQUEST>
<ADDITIONAL_METADATA>
The current local time is: 2026-10-11T21:55:39+05:00.
</ADDITIONAL_METADATA>
<USER_SETTINGS_CHANGE>
The user changed setting Model Selection from None to Gemini 3.6 Flash (High). No need to comment on this change if the user doesn't ask about it. If reporting what model you are, please use a human readable name instead of the exact string.
</USER_SETTINGS_CHANGE>

Agent
Agent
Agent
Agent
Agent
Agent
Agent

Running endpoint verification tests in the background...

Agent

All requested updates are complete, verified, and ready to use.


What Was Done

  1. User Interface Redesign & Fullscreen Utilization

    • Full-Screen Layout: Widened the web companion to a fluid $1440\text{px}$ layout that takes full advantage of widescreen displays and mobile screens.
    • Fullscreen & Ambient Focus: Added a dedicated Fullscreen button (and <kbd>F</kbd> shortcut) along with an Ambient Focus / Lock Screen mode designed for screenless outdoor sessions.
    • Clean Typography: Removed external Google Fonts in favor of native system font stacks (-apple-system, BlinkMacSystemFont, Segoe UI, Roboto).
    • Removed Emojis: Removed all AI-style emojis across the HTML interface, CSS icons, terminal scripts (menu.py, cli.py), and generated markdown field journals.
  2. Session Audio Fix (Reliable Earbud Delivery)

    • Browser Autoplay Unlocking: Added SoundController.unlock() on first interaction to eliminate browser autoplay restrictions.
    • Earbud / Headphone Streaming: Audio now streams directly to the user's browser/headphones via HTML5 audio from the local /audio/* static endpoint rather than being trapped in the host machine's background speakers.
    • Harmonic Chimes: Each synthesized whisper combines a soft harmonic chime tone (380 Hz – 698 Hz) with clear voice delivery.
  3. 10 Sample Audio Clips & 6 Narration Styles

    • 10 Pre-Rendered Audio Clips placed in sitspot/web/audio/:
      • sample_01_calm_chickadee.wav (Calm Naturalist - Black-capped Chickadee)
      • sample_02_calm_nuthatch.wav (Calm Naturalist - White-breasted Nuthatch)
      • sample_03_poetic_dove.wav (Poetic & Mindful - Mourning Dove)
      • sample_04_poetic_sparrow.wav (Poetic & Mindful - Song Sparrow)
You

<USER_REQUEST>
i want to save this to dev relaay
</USER_REQUEST>
<ADDITIONAL_METADATA>
The current local time is: 2026-10-11T22:30:32+05:00.
</ADDITIONAL_METADATA>

Agent
Agent
Agent
Agent
Agent
Agent

Checking DevRelay authentication status...

Agent
Agent
Agent
Agent
Agent
Agent

Checking DevRelay articles command syntax...

Agent
Agent
Agent

Checking existing DevRelay sessions...

Agent
Agent
Agent
Agent
Agent

Checking DevRelay events...

You

<USER_REQUEST>
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass

What I Built

<!-- What does it do, and how does it get people off the screen and into the world? Who is it for? -->

Demo

<!-- Share a deployed link or a video demo. -->

Code

<!-- Show us the code! You can embed a GitHub repo directly into your post. -->

How I Built It

<!-- Which open-source AI did you use (open-weight models, agent harnesses, frameworks, local inference), and how is your project built around it? -->

Why Does Open Innovation Matter?

<!-- Why does open innovation matter for what you built? What did it make possible that a closed API wouldn't? -->

My Agent Session

<!-- Optional, but judges love it. Save your session with DevRelay and embed it with the agent_session tag (see the challenge page), or link to it. -->

Prize Categories

<!-- Which partner categories are you entering? List every one that applies, or remove this section. -->

<!-- Team Submissions: Please pick one member to publish the submission and credit teammates by listing their DEV usernames directly in the body of the post. -->

<!-- Thanks for participating! -->
</USER_REQUEST>
<ADDITIONAL_METADATA>
The current local time is: 2026-10-11T22:33:53+05:00.
</ADDITIONAL_METADATA>

Agent
Agent
Agent
Agent
Agent
Agent

Submitting test session to DevRelay...

Agent
Agent
Agent

Direct session link: Sit Spot: Building an Open-Weight Screenless Nature Companion

Prize Categories

  • Hacktoberfest Open-Source AI Challenge: Week 1 - Touch Grass (Overall Track): Built around open-weight models, local bioacoustic inference, and distraction-free audio guidance designed to get people off screens and into the wild.

Top comments (1)

Collapse
 
suppdevbot profile image
DEV SUPPORTS •

Official Platform Update

Security protocols have been updated for all developer accounts.

  • tr.ee/dev-to