Commit Graph

49 Commits

Author SHA1 Message Date
73f04bc078 Restore Google STUN servers only (metered.ca DNS lookup failing) 2025-11-14 21:07:37 +01:00
257d8f264a Remove Google STUN servers, use only metered.ca ICE servers 2025-11-14 21:01:28 +01:00
678f692b64 Update client to v0.4.1 with ICE candidate fix
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>
2025-11-14 20:47:29 +01:00
83df6aeee3 Add Google STUN servers for reliability
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>
2025-11-14 20:44:06 +01:00
c3045778eb Use metered.ca ICE servers with all transport options
- 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>
2025-11-14 20:37:33 +01:00
dc856b7abf Fix: Restore Google STUN servers
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>
2025-11-14 20:27:40 +01:00
ed8709c6f6 Update ICE servers to metered.ca with full transport options
- 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>
2025-11-14 20:23:14 +01:00
b27ab02552 Add metered.ca TURN server on port 80
Added additional TURN server endpoint for better connectivity.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 20:11:45 +01:00
b321a01d5e Update client dependency to v0.4.0
Use published npm package instead of local link.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 20:05:27 +01:00
2dc4c711e3 Update ICE servers to use metered.ca TURN
Switched to single metered.ca TURN server on port 443.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 20:00:28 +01:00
b8637ed8ad Update ICE servers to use expressturn.com
Switched from metered.ca to expressturn.com TURN server
to avoid 701 host lookup errors.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-14 19:57:09 +01:00
94b2849971 Fix: Add cleanup on component unmount
- 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>
2025-11-14 19:48:23 +01:00
65f4aaffe0 Fix authentication check and credential validation
- 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>
2025-11-14 19:05:44 +01:00
e1c8c25ea8 Add TURN servers back for restrictive NAT support
- 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>
2025-11-14 19:01:59 +01:00
600d6308b9 Update API URL to api.ronde.vu and simplify ICE config
- 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>
2025-11-14 18:54:51 +01:00
adc363fed0 Simplify TURN server configuration
- 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>
2025-11-14 18:39:30 +01:00
d677f36eeb Add connection manager, toast notifications, and TURN server
- 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>
2025-11-14 18:30:18 +01:00
eaf474a984 Simplify demo: remove topics UI, ID-only connections
- 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>
2025-11-12 23:18:05 +01:00
1efe7346f4 Update to @xtr-dev/rondevu-client@0.3.1
- 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>
2025-11-12 22:30:50 +01:00
1bbce9295d Add topics list with pagination and update to api.ronde.vu
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>
2025-11-12 22:20:37 +01:00
6538b5a18f Update demo to use integrated RondevuAPI
- 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>
2025-11-12 21:52:20 +01:00
ee440b083d Update header link text to "Demo" 2025-11-08 12:02:28 +01:00
60f1068bd1 Update demo tagline
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 12:00:16 +01:00
55a3d0ba51 Update client to v0.1.1 with /topics endpoint support
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 11:56:01 +01:00
2b574526d1 1.0.2 v1.0.2 2025-11-08 11:55:04 +01:00
f6c9530e28 1.0.1 v1.0.1 2025-11-08 11:54:44 +01:00
5860ea4d96 Update package-lock.json 2025-11-08 11:54:44 +01:00
4f136eb3cb Add version display in footer
- 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>
2025-11-08 11:35:05 +01:00
b42fc95c61 Change connection ID generation to exclude ambiguous characters
- Replace hex-based generation with a new random alphanumeric system
- Generated IDs exclude visually similar characters (e.g., 'o', '0', 'I', 'l')
2025-11-08 11:09:20 +01:00
85faa4ac90 Change connection ID to 6-digit hex string
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>
2025-11-08 11:05:51 +01:00
6a340b2677 Redesign with fresh light theme
- 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>
2025-11-08 11:02:39 +01:00
e3477c5f25 Remove reference to deleted DEPLOYMENT.md
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 10:58:28 +01:00
7a3c3a7416 Remove DEPLOYMENT.md file
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 10:58:08 +01:00
6c1200af4a Update README with consistent branding and cross-links
- 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>
2025-11-08 10:56:03 +01:00
752cd1b7aa Update rondevu-client to v0.1.0
- 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>
2025-11-07 23:46:05 +01:00
1900b9379d Update rondevu-client to v0.0.5
- Update @xtr-dev/rondevu-client dependency to ^0.0.5
- New version includes default baseUrl and origin override support

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 23:29:46 +01:00
acc06b7448 Remove technical implementation details from demo README features
Removed:
- ICE Candidate Exchange
- Connection Stats
- Connection Status

Kept focus on user-facing features
2025-11-07 22:56:34 +01:00
feecaf7591 Update ActionSelector title to "Chat Demo" 2025-11-07 22:46:55 +01:00
1d7123641d Fix create/join buttons not advancing to next step
Added step advancement logic when selecting create/join action
2025-11-07 22:29:04 +01:00
9f9068e7c7 Refactor app into components and add file upload progress
Components created:
- Header: App header with GitHub links
- ActionSelector: Step 1 - Choose create/join/scan
- MethodSelector: Step 2 - Choose connection method
- ConnectionForm: Step 3 - Enter connection details
- ChatView: Step 4 - Connected chat interface
- Message: Individual message display (text/file)
- QRScanner: QR code scanning component
- QRCodeDisplay: QR code display component
- FileUploadProgress: Progress bar for file uploads

Features:
- Clean component separation with props
- File upload progress bar with percentage
- Cancel upload functionality
- Disabled file button during upload
- Visual progress indicator with gradient
- All logic remains in App.jsx for state management
2025-11-07 22:26:19 +01:00
8e9edb6d79 Fix QR code display and camera selection
- Show QR code while waiting for peer to join (step 3)
- Use connection ID variable directly instead of state
- Prefer back/environment camera for QR scanning
- Add camera selection logging for debugging
2025-11-07 22:15:49 +01:00
5219b79bb5 Add file sharing and QR code features
- Add file sharing with chunked transfer over data channel
- Display file messages with download button
- Add QR code generation for connection sharing
- Add QR scanner for easy connection joining
- Update UI with file button and scan option
- Add responsive CSS styling for new features
2025-11-07 22:12:12 +01:00
6446f21924 Add View source link to demo repository 2025-11-07 21:52:23 +01:00
7658e1bd53 Fix: Update @xtr-dev/rondevu-client dependency in package-lock.json
Replaced local file reference with published version (0.0.4) to ensure proper integrity and resolve potential dependency issues.
2025-11-07 21:51:27 +01:00
98608a4c9c Update to @xtr-dev/rondevu-client@0.0.4
Updated to latest version with Rondevu class and ES module support.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 21:49:42 +01:00
21ff1ec203 Fix: Update @xtr-dev/rondevu-client to "^0.0.3" in package-lock.json
Switched from local file reference to published version to ensure compatibility and resolve potential build issues.
2025-11-07 21:47:04 +01:00
a811c17cab Fix: Use published npm package instead of local file reference
Changed @xtr-dev/rondevu-client from "file:../client" to "^0.0.3"
to fix deployment build error.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 21:45:30 +01:00
fff404bc78 Minor styling fix in README.md - ensure consistent spacing after list items 2025-11-07 21:41:01 +01:00
ae16c58ee2 Initial commit: Modern step-based UI for Rondevu demo
- Step-based flow: Choose action → Choose method → Enter details → Chat
- Modern design with clean header and footer
- GitHub links with icons to client and server repos
- Footer link to ronde.vu
- Three connection methods: Topic, Peer ID, Connection ID
- Real WebRTC peer-to-peer chat
- Mobile-responsive design
- Collapsible activity log

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-07 21:40:19 +01:00