TrailEar: Offline Birding Companion for Hacktoberfest Touch Grass Challenge
Description and use
TrailEar is an offline birding companion that detects bird calls locally, cues the user, stores detections, and summarizes the walk with a local LLM, preserving privacy and eliminating network costs.
Problem
Bird‑ID apps require signal, keep users on a screen, and send audio and location to a server, which is impractical for trail walks.
Outcome
TrailEar provides offline bird detection and summary, preserving privacy, eliminating network costs, and allowing modular replacement of detection or LLM components.
Workflow
- 1. User starts TrailEar locally via uvicorn command.
- 2. App captures 3‑second mic windows at 48 kHz mono.
- 3. BirdNET‑Analyzer processes audio, applies confidence threshold and 60‑second cooldown per species.
- 4. When a bird is detected, a quiet cue is emitted via server‑sent events.
- 5. Detections are stored in SQLite.
- 6. After the walk, a local LLM (Ollama or llama.cpp) summarizes the detection list using a static species file, constrained not to add facts.
- 7. User views summary and history through the static HTML/JS frontend.
Evidence
TrailEar listens through the mic, gives a quiet cue when it detects a bird, and saves the details for a summary after the walk.
BirdNET-Analyzer on 3-second mic windows (sounddevice, 48 kHz mono), with a confidence threshold and a 60-second cooldown per species so cues stay rare.
Privacy by design: the server binds to localhost, there is no telemetry, and there are no runtime network calls.
- Record date: 2026-10-11T19:56:29.934Z