- Fix truth voting: add error logging, prevent duplicate event listeners,
guard against concurrent votes
- Add real-time friends list updates in chat via custom event
- Make mobile contact dropdown narrower (260px) and stay on right side
- Add data-vote-bound attribute to prevent duplicate vote handlers
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Added toggleable sidebar showing friends list on right side of chat
- Small avatars with online status and unread badges
- Click friend to switch conversation
- Toggle button in chat header
- Hidden on mobile (use contacts dropdown instead)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Centered stacked layout at screen center
- Purple accent color instead of blue
- Compact padding and smaller fonts
- Glass effect with blur and transparency
- Theme support (dark/light/blue)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add long-press (1 second) on map to open create post popup
- Add close button (X) to mode selector and create post popups
- Improve create post popup design with glass-morphism effect
- Fix chat: mark messages as read when received in open chat
- Fix avatar styling for guest users (remove nested circles)
- Add userId to auth context for stable chat identification
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add WebSocket-based chat with presence indicators
- Add message delivery status (sending/sent/read)
- Add notification badges for unread messages
- Add body scroll lock on mobile to prevent keyboard issues
- Add visibility change handling to refresh data on browser resume
- Add internationalization (i18n) with English/French support
- Add timezone-aware message timestamps
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>