trails/openspec/changes/app-navigation/design.md
Ullrich Schäfer c7c1c275df
Add 8 proposed changes and old trails analysis
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>
2026-03-25 03:57:20 +01:00

40 lines
1.5 KiB
Markdown

## Context
Navigation audit found: Journal's `/routes` and `/activities` pages are
orphaned (no links point to them). The Planner home page has no CTA. Logout
is only on the profile page. Users must know URLs to use the apps.
## Goals / Non-Goals
**Goals:**
- Every non-API route reachable via UI navigation
- Logged-in Journal users see: Routes, Activities, profile, logout
- Logged-out Journal users see: login, register
- Planner home has a clear "start planning" action
- Keep it minimal — a thin bar, not a complex sidebar
**Non-Goals:**
- Mobile hamburger menu (responsive PR already hides sidebar — nav bar wraps naturally)
- Breadcrumbs or nested navigation
- Settings page (future)
## Decisions
### D1: Journal nav bar in root Layout
Add a `<nav>` element inside `Layout` in `root.tsx`. The root loader already
returns the user (added for Sentry context), so the nav bar can conditionally
show authenticated vs. unauthenticated links. No new loader needed.
### D2: Planner gets a CTA on home, not a nav bar
The Planner is session-focused — users arrive, create a session, and work in
it. A full nav bar would be overhead. Instead: home page gets a prominent
"Start Planning" button linking to `/new`. Session view already has a header —
add a small logo/home link to it.
### D3: Use @trails-cool/ui for shared nav component
The nav bar itself is Journal-specific (routes, activities, auth). No need
to put it in the shared UI package — it goes directly in Journal's root.tsx
or a colocated component.