🦋

Live Biodiversity Spotlight

live demoproduction-grade

🎯 Try it now: Click on any point below to see species with unusual activity patterns

• Filter by anomaly score• View detailed observations• Explore global patterns

Live Anomaly Detection

Live data via iNaturalist
Loading map…

What the indicators mean

The 0–10 activity indicator reflects how unusual recent observations are versus seasonal baseline and typical range.

  • Seasonality: compares recent observation counts to the same period in prior years
  • Geography: weighs distance from known range and cluster dispersion
  • Evidence: boosts when photos/audio are present and geolocation is precise
  • Recency: emphasizes observations in the last 24–72 hours

Interpretation:

  • 0–4: within expected variation
  • 5–7: notable shift—worth a look
  • 8–10: strong departure—investigate context

Indicators are directional, not proof. Review local conditions, observer notes, and licensing/attribution.

Mission

Help naturalists and city planners notice meaningful biodiversity changes sooner, using real observations and explainable indicators. The focus: timely signals, clear provenance, and an accessible map that works well on everyday devices.

Real-time ProcessingAnomaly DetectionAccessibility FirstOpen DataProduction Ready

Feature set

Frame time

P95 < 20ms
50K points clustered

Data freshness

< 15 minutes
Provider to UI

Accessibility

WCAG 2.2 AA
No critical issues

API latency

P95 < 300ms
Common queries

Data Providers

iNaturalist

Citizen science observations with photos and research grade classifications

Global, 100M+ observations

eBird

Cornell Lab's bird sighting database with seasonal migration patterns

Global, 1B+ sightings

GBIF

Global Biodiversity Information Facility aggregating museum and research data

2B+ occurrence records

System Architecture

Frontend:
React 18, Mapbox GL, D3, TanStack Query, Zustand, CSS with design tokens
Backend API:
Python 3.11, FastAPI, Uvicorn, Pydantic, Redis 7, PostgreSQL 15 with PostGIS
Ingest Workers:
Async fetchers, ETag/Last-Modified support, circuit breakers, provenance capture
Anomaly Engine:
Spatial scan statistics, H3 hex grid, seasonality adjustment, taxon normalization
Observability:
OpenTelemetry traces, structured logs, Prometheus metrics, alerting

Spec & Goals

Build goals

  • Detect unusual biodiversity activity within 15 minutes of observation
  • Explain indicators with provenance and confidence bands
  • Keep map interactions smooth at 50K points

Data & API

  • iNaturalist recent observations (JSON), with ETag and paging
  • Adapters for GBIF/eBird for cross-coverage
  • API: GET /api/biodiversity/observations?bbox=&since=

Key Features

🗺️

Interactive Mapping

  • • Hex density visualization with clustering
  • • Animated anomaly halos for unusual activity
  • • Vector tiles for performance at scale
  • • Keyboard navigable with screen reader support
🔍

Anomaly Detection

  • • Spatial scan statistics on H3 hex grid
  • • Seasonality baseline with Hampel filtering
  • • False discovery rate control
  • • Evidence cards with statistical confidence
🌳

Taxonomy Intelligence

  • • Canonical backbone with synonym resolution
  • • Interactive sunburst visualization
  • • Cross-provider taxon normalization
  • • Homonym and regional variant handling

Accessibility First

  • • WCAG 2.2 AA compliance verified
  • • Full keyboard navigation support
  • • Screen reader optimized with ARIA
  • • High contrast and reduced motion options

Quality Assurance

Testing

  • • Unit tests with golden datasets
  • • Contract tests with cassettes
  • • Integration tests with mocks
  • • E2E tests with Playwright

Performance

  • • Load testing with k6 scripts
  • • WebGL frame metric capture
  • • Memory budget monitoring
  • • Bundle size enforcement

Observability

  • • OpenTelemetry distributed tracing
  • • Structured logging with context
  • • Prometheus metrics and alerting
  • • Schema drift detection

Security

  • • Key vault for API tokens
  • • CORS restrictions
  • • Rate limiting per token
  • • Audit logs for sensitive actions