Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Working with Desktop clients #64

Open
ValorZard opened this issue Sep 24, 2023 · 2 comments
Open

Working with Desktop clients #64

ValorZard opened this issue Sep 24, 2023 · 2 comments
Labels
question Further information is requested

Comments

@ValorZard
Copy link

Looking at this repo, it seems pretty cool. However, I'm curious. Could you use this library to make a desktop client, and have it be able to connect to the same server and communicate with a web-based client?

@BiagioFesta BiagioFesta added the question Further information is requested label Sep 25, 2023
@BiagioFesta
Copy link
Owner

BiagioFesta commented Sep 25, 2023

Yes.

Just like WebSocket, you can use WebTransport as a general-purpose protocol.

However, WebTransport provides some benefits, such as standard cryptographic features embedded in the protocol (security by default) instead of adding an extra layer on top, as WebSocket or HTTP do. It also offers the possibility to have multiple independent "streams" of data within the same connection.

WebTransport has been introduced in recent browser versions, making it easy to create a web client with a native JavaScript API. For example, you can find more information on how to use it in the Mozilla Developer Network documentation.

Similar to other common network protocols, WebTransport uses a client-server architecture.

Therefore, you can create a desktop client that communicates using WebTransport and interacts with a server, which acts as an intermediary to facilitate communication with another client using web technology (browser API).

This library (at least that's the objective :) ) should provide a simple but effective API to write an application in Rust (both client or server) using WebTransport as a communication protocol

@tausifcreates
Copy link
Contributor

@BiagioFesta I have high hopes for this project. Wish you the best.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants