Back to using custom STUN/TURN server with IP address to avoid DNS lookup issues. Note: TURN relay still requires firewall port range to be opened.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed from overwriting onicecandidate handlers (which broke the 'this' context) to using addEventListener. This ensures the connection manager's handlers can properly send ICE candidates without context issues.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Temporarily using Metered.ca TURN servers to test WebRTC connectivity while diagnosing issues with custom TURN server relay ports.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added logging to track when ICE candidates are sent to and received from the signaling server to help diagnose connection exchange issues.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added comprehensive logging for ICE gathering state, connection state, and candidate gathering to help diagnose connection issues. Properly chains event handlers to avoid breaking existing connection logic.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Changed from domain names (stun.ronde.vu/turn.ronde.vu) to IP address (57.129.61.67) to resolve browser DNS lookup failures (error 701).
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Updated TURN server configuration to include both UDP and TCP transports for better compatibility and connection reliability.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Critical bug fix: ICE candidates were being missed on first poll,
causing connections to fail. Updated to v0.4.1 which fixes this.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added Google STUN servers alongside metered.ca for maximum
reliability. Google STUN always works and ensures basic NAT
traversal even if TURN servers fail.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- metered.ca STUN server
- TURN on port 80 (UDP and TCP)
- TURN on port 443 (UDP)
- TURNS on port 443 (TCP/TLS)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
The connection was failing because Google STUN servers were removed.
Restored to the working configuration with Google STUN + metered.ca TURN.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed Google STUN servers
- Added metered.ca STUN server
- Added TCP transport for TURN servers
- Added TURNS (secure) on port 443
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Close all connections when component unmounts
- Prevents polling timers from running after unmount
- Better resource cleanup
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add authentication check before allowing peer discovery
- Validate stored credentials have required fields (peerId, secret)
- Remove invalid/corrupted credentials from localStorage
- Show clear error message when trying to discover without auth
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Re-add metered.ca TURN servers on ports 80 and 443
- Keep Google STUN servers for NAT detection
- Enables connections through restrictive firewalls
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Change API URL from rondevu.xtrdev.workers.dev to api.ronde.vu
- Remove TURN servers, use only Google STUN (eliminate errors)
- Update README with correct API URL
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove duplicate TURN entries to avoid "5+ servers" warning
- Keep only essential STUN and TURN servers
- Use standard ports (80 and 443)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace manual RTCPeerConnection handling with RondevuConnection class
- Add react-hot-toast for better UX (replace browser alerts)
- Add TURN server configuration (relay1.expressturn.com:3480)
- Update README to reflect current demo structure
- Link local client library for latest features
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Remove topic selection and peer discovery UI
- Remove MethodSelector and TopicsList components
- Simplify ConnectionForm to just take a connection ID
- Update to use @xtr-dev/rondevu-client@0.3.2
- Demo version: 0.3.2
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Updated from 0.1.1 to 0.3.1 to support rdv.api property
- Fixes "t.api is undefined" error in TopicsList component
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Features:
- Added TopicsList component with pagination support
- Shows active topics with peer counts
- Pagination controls (Previous/Next)
- Refresh button to reload topics
- Modal UI with proper styling
- Floating "View Topics" button on main screens
Changes:
- Updated API URL from rondevu.xtrdev.workers.dev to api.ronde.vu
- Added TopicsList component with pagination UI
- Added modal overlay and styles
- Integrated topics modal into main App
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Removed separate RondevuClient instantiation
- Updated to use rdv.api for all API calls (getVersion, listTopics, listSessions)
- Updated README example to show integrated API usage
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add version state tracking for demo and server versions
- Create loadVersions() function to fetch server version via API
- Update footer to display both demo version and server version
- Update vite.config.js to inject git commit hash as VITE_VERSION
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
Generate random 6-digit hex IDs (e.g., A3F2C1) instead of
timestamp-based IDs (e.g., conn-1762596287521) for cleaner,
more user-friendly connection codes.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Change to light background (#f8f9fc) with minimal accent colors
- Replace purple gradient with clean white header
- Update primary color to #5568d3 throughout
- Use subtle shadows and borders for depth
- Improve contrast with darker text (#1a1a1a)
- Cleaner, more professional appearance
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update header with consistent Rondevu branding
- Add links to rondevu-server and rondevu-client repositories
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Update @xtr-dev/rondevu-client dependency to ^0.1.0
- New version supports global option for connect() method
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>