tavi
Distributed Bird Sound Identification
Deploy satellite microphones, identify birds with AI, collaborate across teams
Distributed Satellites
Deploy Raspberry Pi or Android phone satellites with GPS. Audio is captured, filtered, and sent to the hub in real-time over MQTT with 30s heartbeat keepalive.
AI-Powered Identification
BirdNET deep learning model identifies 6,500+ bird species from 3-second audio chunks with geo-aware filtering and sunrise/sunset scheduling.
Multi-Tenant
Multiple teams share infrastructure with full data isolation. 4-role permission model with platform admin with invite system, audit logging, and tenant ownership transfer.
38 Languages
Bird names displayed in your preferred language everywhere — species catalog, detection map, alerts, and notifications — with thumbnails from Wikipedia.
Real-Time Alerts
Instant WebSocket notifications for rare species detections. Configurable watchlists and webhooks with HMAC signatures.
Community Verification
Review queue for uncertain detections with audio playback, spectrogram, and keyboard shortcuts.
Account & Security
Self-service account management, login rate limiting, account lockout, audit logging, and platform admin controls.
Species Catalog & Map
Sortable species catalog cards with rich stats, and a Leaflet.js detection map with satellite markers colored by status.
Latest releases
Badges in these pages
The level a setting or rule applies at, top down: the whole hub, one team, one person, one phone or Pi.
The lowest team role that may do it (viewer, member, admin, owner), or a hub admin.
Where it runs or shows: the web app, the phone, the Raspberry Pi, the hub server.
The release it arrived in; opens that entry of the changelog.