Proposed changes (all with proposal, design, specs, tasks): - app-navigation (9 tasks) — nav bars for both apps - planner-landing-page (7 tasks) — standalone landing page - planner-multiplayer-awareness (13 tasks) — participants, cursors, names - changelog (13 tasks) — public changelog with "what's new" - transactional-emails (15 tasks) — magic link + welcome emails - planner-features (18 tasks) — no-go areas, notes, recovery, rate limits - komoot-import (23 tasks) — Komoot tour import - route-features (37 tasks) — sharing, multi-day, spatial, photos Also adds docs/old-trails-analysis.md with feature analysis from the older trails project. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
32 lines
1.4 KiB
Markdown
32 lines
1.4 KiB
Markdown
## Why
|
|
|
|
Users switching to trails.cool have years of tours on Komoot. Without import,
|
|
they start with an empty Journal — no history, no motivation to switch. A
|
|
one-click Komoot import lets users bring their existing tours and start using
|
|
trails.cool immediately.
|
|
|
|
## What Changes
|
|
|
|
- Add Komoot account connection flow (email + password → API credentials)
|
|
- Import Komoot tours as Journal activities with route data
|
|
- Batch import with progress tracking, deduplication, and error handling
|
|
- Integration settings page to manage connected accounts and trigger imports
|
|
- Fetch full tour GPX (not just metadata) so imported routes have geometry
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
|
|
- `komoot-import`: Connect a Komoot account, import tours as activities with routes, track import progress, deduplicate on re-import
|
|
|
|
### Modified Capabilities
|
|
|
|
- `route-management`: Routes can now be created via import (not just manual creation), with an external source tracking field
|
|
|
|
## Impact
|
|
|
|
- **Database**: New tables for integration connections and import batches in `journal` schema
|
|
- **Files**: New routes (`/integrations`, `/api/integrations/*`), new server utilities for Komoot API, new DB schema tables
|
|
- **Dependencies**: No new packages needed — uses fetch for Komoot API, existing Drizzle for DB
|
|
- **Privacy**: Komoot credentials stored encrypted. Must be documented in privacy manifest.
|
|
- **External**: Komoot API (api.komoot.de) — basic auth, no official developer program
|