How aurorabackcountry/infoex-api works
Aurora is an offline-capable avalanche field-reporting product with a mobile guide app, an operator console, and a Supabase-backed processing engine. Its core workflow is guide capture, offline queuing and sync, structured extraction, human review, then approval-gated InfoEx submission. Other documented capabilities include briefings and evidence-grounded Q&A, daily reports, weather and map views, and operational management. The README supports the main workflow and capabilities; sampled files show selected console API behavior, while several backend subsystems are represented only by their documented shared-code directories.
Main entry points: _shared Edge function engine · page.tsx Operator console · route.ts Station management API · reports.tsx Review and approval
Components 22
Field app
- Guide app
apps/app/src/app/(tabs)/index.tsx - Field capture
apps/app/src/features/capture/draft-store.ts - Offline outbox
apps/app/src/lib/outbox.ts - Sync service
apps/app/src/lib/sync-service.ts - Review and approval
apps/app/src/app/(tabs)/reports.tsx
Reporting engine
- Edge function engine
supabase/functions/_shared - Structured extraction
supabase/functions/_shared/claude.ts - InfoEx submission
supabase/functions/_shared/infoex.ts
Briefings and insights
- Briefing assembly
supabase/functions/_shared/briefing - Grounded Q&A
supabase/functions/_shared/ask - Daily reports
supabase/functions/_shared/daily_report
Operator console
- Operator console
apps/admin/app/(console)/dashboard/page.tsx - Field map API
apps/admin/app/api/map/route.ts - Zone trends API
apps/admin/app/api/trends/route.ts - Operation notes API
apps/admin/app/api/notes/route.ts - Station management API
apps/admin/app/api/stations/route.ts
Data and integrations
- Aurora database
- InfoEx
- External data feeds
supabase/functions/_shared/feeds - Drive export
supabase/functions/_shared/drive/export.ts
Other components
- Field guide
- Operation staff
Connections 31
- Field guide → Field capture: records observations
- Field capture → Offline outbox: saves drafts
- Offline outbox → Sync service: queues uploads
- Sync service → Edge function engine: syncs capture
- Edge function engine → Structured extraction: runs extraction
- Structured extraction → Aurora database: stores validated data
- Aurora database → Review and approval: provides review data
- Field guide → Review and approval: reviews and approves
- Review and approval → Edge function engine: submits approved data
- Edge function engine → InfoEx submission: dispatches submission
- InfoEx submission → InfoEx: posts observations
- InfoEx → External data feeds: supplies operator reports
- External data feeds → Aurora database: ingests feed data
- Edge function engine → Briefing assembly: assembles briefings
- Briefing assembly → Aurora database: reads operation data
- Edge function engine → Grounded Q&A: serves questions
- Grounded Q&A → Aurora database: retrieves cited records
- Edge function engine → Daily reports: builds daily reports
- Daily reports → Aurora database: reads and stores reports
- Operation staff → Operator console: manages operation
- Operator console → Field map API: requests map data
- Field map API → Aurora database: reads field records
- Operator console → Zone trends API: requests trends
- Zone trends API → Aurora database: queries zone trends
- Operator console → Operation notes API: manages notes
- Operation notes API → Aurora database: reads and writes notes
- Operator console → Station management API: manages stations
- Station management API → Aurora database: stores station data
- Station management API → External data feeds: requests station history
- Edge function engine → Drive export: exports reports
- Drive export → InfoEx: uses connected Drive