Commit Graph

4 Commits

Author SHA1 Message Date
Jeff Emmett e480a693f5 feat: add timezone-aware time display across all views
Detects browser timezone, persists in Zustand store, and formats all
event times using explicit timezone via Intl.DateTimeFormat. Adds TZ
badge to calendar header. Affects DayView, WeekView, MonthView,
EventDetailModal, and SpatioTemporalMap.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 17:01:01 -07:00
Jeff Emmett cd7f4adf5e feat: add Day/Week views, view switcher, demo data with map transit lines
- Add DayView (24h time grid with events) and WeekView (7-day columns)
- Add ViewSwitcher icon bar in header for quick Day/Week/Month/Season/Year/Decade switching
- Fix zoom to properly route each granularity to its dedicated view
- Normalize all views to consistent h-full flex-col container pattern
- Change YearView default from fullscreen portal to inline compact/glance
- Add FullscreenToggle wrapper for opt-in fullscreen on any view
- Add ~40 demo events with real coordinates (Berlin, Amsterdam, Munich, Paris, Prague, Lisbon, Barcelona, Brussels)
- Add DemoDataSeeder to pre-populate React Query cache on demo page
- Add TransitLines component drawing dashed polylines between event locations on the map
- Extend EventListItem type with latitude/longitude/coordinates fields
- Add CSS fade transition between view switches

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 15:27:58 -08:00
Jeff Emmett 7af73e4453 feat: add rStack AppSwitcher dropdown to header
Adds the unified rStack app switcher with pastel badges, emoji icons,
and categorized navigation across all 17 rStack apps.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-24 19:15:49 -08:00
Jeff Emmett 5fcbfd6fa8 feat: initial rcal-online — semantic calendar engine with lunar overlay
Forked from zoomcal-jeffemmett, unified with cal-jeffemmett into a single
semantically-aware calendar app. Replaces IFC calendar with lunar calendar,
adds 4-tab views (Temporal, Spatial, Lunar, Context), and r* tool integration
layer for cross-tool calendar rendering.

- Phase 0: Forked zoomcal, inlined @cal/shared, added lunarphase-js + suncalc
- Phase 1: New type system (lunar + r* tools), Zustand store with tabs, IFC stripped
- Phase 2: Lunar engine with synodic month tracking, MoonPhaseIcon, LunarTab
- Phase 3: Adapter registry for r* tools, RCalProvider, URL-driven /context route
- Phase 4: Prisma + PostgreSQL backend, 7 API routes (events, sources, lunar, context)
- Phase 5: Docker multi-stage build, hardened docker-compose with PostgreSQL 16

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 09:01:34 -07:00