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

42 lines
1.4 KiB
Markdown

---
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
<!-- SECTION:DESCRIPTION:BEGIN -->
Add routing between participants and waypoints using c3nav for indoor routes and OSRM/GraphHopper for outdoor routes
<!-- SECTION:DESCRIPTION:END -->
## 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