---
id: task-6
title: c3nav indoor integration
status: Done
assignee: []
created_date: '2025-12-15 19:37'
updated_date: '2026-01-02 14:28'
labels: []
dependencies: []
priority: high
---

## Description

<!-- SECTION:DESCRIPTION:BEGIN -->
Deep integration with c3nav: show indoor floor plans, WiFi/BLE positioning, routing through the venue. Display friend positions on indoor maps.
<!-- SECTION:DESCRIPTION:END -->

## Implementation Notes

<!-- SECTION:NOTES:BEGIN -->
Implemented c3nav indoor map integration:
- Tile proxy API with CORS and session handling
- Data API proxy for levels/bounds/locations
- IndoorMapView component with MapLibre GL
- Floor selector (Level 0-4)
- Tap-to-set indoor position
- Position sync between participants
- Easter egg: 'The Underground of the Underground'

## Update (2026-01-02)

Removed indoor map button from UI because c3nav blocks iframe embedding (X-Frame-Options: deny). The C3NavEmbed component now shows a fallback UI with an 'Open c3nav' button that opens in a new tab. Indoor map functionality is effectively deprecated in favor of direct c3nav usage.
<!-- SECTION:NOTES:END -->
