rmaps-online/backlog/tasks/task-1 - Implement-navigati...

1.4 KiB

id: task-1 title: Implement navigation routes status: Done assignee: [@claude] created_date: '2025-12-15 19:37' completed_date: '2025-12-28' labels: [feature, navigation] dependencies: [] priority: high

Description

Add routing between participants and waypoints using c3nav for indoor routes and OSRM/GraphHopper for outdoor routes

Implementation Notes

Components Added

  • /api/routing/route.ts - API endpoint for route calculation
  • RouteOverlay.tsx - Map overlay component for visualizing routes
  • NavigationPanel.tsx - UI panel for selecting navigation targets

Features Implemented

  • Outdoor routing: Uses OSRM public API for walking/driving routes
  • Indoor routing: Integrates c3nav API for CCC venue navigation
  • Mixed routes: Handles transitions between indoor/outdoor
  • Route visualization: GeoJSON line layer on MapLibre GL map
  • Navigation UI: Click on participant/waypoint to get directions
  • State management: Route state integrated into Zustand store

Technical Details

  • Route segments are typed as outdoor, indoor, or transition
  • Distance/time estimates calculated from OSRM and c3nav responses
  • Route line rendered with outline for visibility
  • Map auto-fits to route bounds when calculated

Commit

a6c124c - feat: Add navigation routes feature with indoor/outdoor routing