rspace-online/backlog/tasks/task-3 - Phase-2-Core-Data-...

47 lines
1.3 KiB
Markdown

---
id: task-3
title: 'Phase 2: Core Data Shapes - Embed, Markdown, Calendar, Map'
status: To Do
assignee: []
created_date: '2026-01-02 14:42'
labels:
- migration
- shapes
- core
dependencies: []
priority: high
---
## Description
<!-- SECTION:DESCRIPTION:BEGIN -->
Port medium-complexity shapes that form the core data visualization layer:
1. **folk-embed** (565 LOC) - URL embeds (YouTube, Maps, Twitter)
- URL transformation patterns
- Interaction state management
2. **folk-calendar** (644 LOC) - Unified calendar widget
- Browser/widget/year views
- Event detection from CalendarPanel/YearViewPanel
3. **folk-map** (2,168 LOC - LARGEST) - Collaborative Mapbox/MapLibre
- Real-time presence cursors
- Drawing annotations (markers, lines, areas)
- Search via Nominatim, routing via OSRM
- GPS location sharing
Simplifications:
- Replace React state with reactive properties
- Replace context providers with event-based communication
- Calendar/Map can be separate packages imported as needed
<!-- SECTION:DESCRIPTION:END -->
## Acceptance Criteria
<!-- AC:BEGIN -->
- [ ] #1 folk-embed component with URL detection
- [ ] #2 folk-calendar with month/year views
- [ ] #3 folk-map with MapLibre integration
- [ ] #4 Real-time presence on map working
<!-- AC:END -->