Funcionalidades
Lo que entrega v1.0 hoy: cascada de identificación, registro de observaciones, social y curación, exportación de datos, PWA offline y privacidad.
Lo que entrega Rastrum hoy
Las funcionalidades de v1.0 son lo que se ejecuta en producción. Cada fila se mapea a un módulo con spec dedicado y código en main.
01 Identificación (cascada por costo de licencia)
Una sola entrada (foto, audio, video, evidencia) corre por una cascada que prioriza plugins gratuitos, luego on-device, y finalmente APIs con BYO key. El primer resultado con confianza ≥ 0.7 gana.
PlantNet
Cloud · gratis (cuota 500/día) · 78K plantas
Claude Haiku 4.5
Cloud · BYO key · visión multi-taxón
BirdNET-Lite (audio)
On-device · CC BY-NC-SA · ~50 MB · ~6,000 aves
EfficientNet-Lite0
On-device · MIT · ~18 MB INT8 · base ImageNet
Phi-3.5-vision (WebLLM)
On-device · ~2.4 GB · respaldo de baja confianza
MegaDetector v5a
On-device · ~134 MB · cámara trampa
/identify
Sondeo rápido sin guardar (foto)
/chat
Foto + audio → cascada → Llama-3.2-1B interpreta
02 Registro de observaciones
Captura geolocalizada con auto-relleno EXIF, multi-medios, y oscurecimiento de coordenadas para especies sensibles.
/observe
GPS de dos pasos + EXIF + oscurecimiento NOM-059
Multi-imagen
Galería con primary + remove
Audio
MediaRecorder ≤30 s
Video
≤30 s (H.265/AV1)
Cámara en app
getUserMedia + fallback a input file
Selector de mapa
Drag-pin + búsqueda + reverse geocode
Mis observaciones
/perfil/observaciones — historial con miniaturas
Importador EXIF batch
/perfil/importar — multi-foto + revisión por fila
Cámara trampa batch
/perfil/importar/camara-trampa — GPS único + EXIF por foto
03 Social + curación
Redes sociales sin patrones oscuros: feed de actividad, follows, comentarios, listas de seguimiento, rachas opt-in y consenso ponderado por experto.
Follows + comentarios + watchlists
Componentes Astro: FollowButton, Comments, WatchlistView
Rachas (opt-in)
Ventana de gracia diaria, recompute nocturno
Insignias de descubrimiento
39 semilla, evaluador nocturno (5 cat × 4 tiers)
UI de aplicación experta
ExpertApplyView + 3× peso de consenso
Feed de actividad
Triggers de servidor + 12 tipos de evento
Badge de campana
Contador en dropdown del avatar (99+ overflow)
04 Datos + exportación
Tu trabajo, tus datos. Exporta en Darwin Core, publica a GBIF, o conecta agentes de IA con el servidor MCP.
Darwin Core CSV
Presets: DwC, SNIB, CONANP
Darwin Core Archive ZIP
Para GBIF IPT (export-dwca Edge Function)
Tokens API personales
rst_* con scopes, hash SHA-256
REST API
/functions/v1/api/{observe,identify,observations,export}
MCP server
/functions/v1/mcp para Claude Desktop, Cursor, VS Code, Copilot
05 Offline + PWA
Funciona en el campo. Outbox local, modelos en dispositivo, mapas offline pmtiles e instalación PWA en una sola pantalla.
Botón de instalación
Android Chrome directo · iOS Safari hint
Service worker
Network-first HTML, cache-first assets
Dexie outbox
IndexedDB para observaciones offline
pmtiles MX
~48 MB para mapa offline
Modelos en caché
BirdNET, EfficientNet, Phi-vision en IndexedDB
06 Privacidad + gobernanza
BYO API keys nunca dejan el navegador. IA on-device nunca envía datos. Especies sensibles oscurecidas. CARE/FPIC para datos indígenas.
Oscurecimiento NOM-059 / CITES
RLS sobre obscure_level
Licencia por observación
CC-BY (default), BY-NC, CC0
CARE / FPIC
Postura para datos indígenas
BYO keys solo en cliente
localStorage, nunca en servidor
IA on-device sin red
BirdNET, EfficientNet, Phi-vision, Llama
07 Internacionalización
EN/ES desde el día uno con paridad estructural. 11 pares de rutas con slugs por idioma. Listo para Zapoteco/Mixteco cuando aterrice el FPIC.
Paridad EN/ES total
Cada string vive en src/i18n/{en,es}.json
11 pares de rutas
/en/observe ↔ /es/observar, /en/profile ↔ /es/perfil, …
Componentes *View
Cuerpo compartido entre locales
Fuente de la verdad: docs/progress.json (v0.1 → v1.0 ítems hechos), src/lib/identifiers/index.ts (plugins registrados) y supabase/functions/ (Edge Functions desplegadas).