Skip to content

Add universe-style networking to reactors #1631

Open
@dbp

Description

@dbp

I was talking to @blerner about this the other day, and after that, looked up a bit of what it would take.

It seems like WebRTC is mature enough (supported in most browsers for a while) to probably be able to support the types of patterns that a port of universe (https://docs.racket-lang.org/teachpack/2htdpuniverse.html) would need -- in particular, being able to send peer-to-peer messages, whether the peers are in the same window or remote across the network. e.g., if built upon this library: https://peerjs.com/ (as the core APIs are... complicated), the centralized server (CPO) would be responsible only for connecting clients, not relaying any data.

There probably would need to be a bit of thought put into the actual exposed API for identifying who you want to connect to (for privacy, usability, etc), but at the bare minimum, it seems possible. And, of course it may be worth revisiting the actual server / client API design rather than just replicating.

(WebRTC is, of course, intended for stuff like voice and video, but the API allows plain data messages too).

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions