P2p client#2
Open
mempko wants to merge 4 commits into
Open
Conversation
In-progress work: WebRTC peer transport, paired desktops, QR pairing flow, ws/webrtc client transports, RemoteUIAccess Abject, GlobalSettings remote-access tab. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- site/nginx.conf: serve client.abject.world as static SPA from
/var/client.abject.world with SSL, asset caching, and security headers.
- package.json: add etch:p2p script that bakes VITE_DEFAULT_MODE=p2p into
the production client build.
- BackendUI: track per-client metadata (kind, peerId, name, connectedAt),
add listFrontendClients / disconnectFrontendClient methods, and emit a
frontendClientsChanged event on connect/disconnect.
- Worker bridge: send a frontend-client-meta custom message immediately
before transferring the webrtc-relay MessagePort so the UI worker can
pair WebRTC metadata with the incoming transport. ui-worker-node keeps
a per-portName FIFO of pending meta.
- RemoteUIAccess: extend attachHandler signature with { name } and pass
the AuthorizedClient name through to BackendUI.
- PeerNetwork: new "Frontends" tab listing every connected UI client
(WebSocket and WebRTC) with Disconnect (all) and Revoke (WebRTC only)
actions. Auto-refreshes on frontendClientsChanged and clientsChanged.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Pairing a phone is conceptually a peer-network operation, not an authentication credential. Consolidate all "manage frontends" UX in PeerNetwork → Frontends: enable toggle, Generate Pairing QR, QR image, selectable pairing URL, and the existing list of connected clients with Disconnect / Revoke. - src/objects/peer-network.ts: new buildPairingSection() rendered at the top of the Frontends tab; handlers for the enable checkbox and Generate Pairing QR button; widget refs reset in populateTabs and hide. - src/objects/global-settings.ts: strip the Remote Access section from the Auth tab (fields, click handlers, buildRemoteAccessSection and helpers). The Auth tab now hosts only WS username/password. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
P2P client so people don't need to host their own client/server pair to get access away from their computer.