ionorg / ion

Real-Distributed RTC System by pure Go and Flutter
MIT License
3.82k stars 519 forks source link

[needs research] Native client using gioui #304

Closed gedw99 closed 3 years ago

gedw99 commented 4 years ago

Gio.org is s golang based GUI framework.

https://gioui.org/

I think it's fast enough to be a client for ion on web, desktop and mobile.

It's very easy to do complex things with and would perhaps be ideal for webrtc and ion.

Sean-Der commented 4 years ago

Hey @gedw99

That looks super interesting! I would love to see if we could pull of a desktop client for ion :)

I don't know if it is relevant for mediadevices or webrtc itself. I am going to move to the pion/ion repo, but this is for sure a big task. Would love someone to tackle it, but I don't think any developers right now have the bandwidth :(

gedw99 commented 4 years ago

I used ion with flutter btw It works but not for desktop with a webview because apple does not allow access to the camera and video from a webview. And electron is too heavy imho - call me fussy :)

I am pretty certain gio will work for web, desktop and mobile without all the flutter of webview baggage. The layers of baggage started getting in my way to innovate is basically my point.

You could even use it within s flutter app for web, desktop ( go-flutter ) and mobile actually.

Anyways I am going to try to find time to work on this with @cloudwebrtc and others. But I have a long list of other things I integrate with gio for s peer to peer system and so figured I should put it out here as an issue first to see what people think.

I am working on CRDT and WASM integration with it currently.

If you run the hip examples on desktop and mobile you will see the Material Design widgets are ready for Prime time.

gedw99 commented 4 years ago

Also if you do s GitHub search for the golang you will find some freaking amazing examples of what this puppy can do.

zkbqhuang commented 4 years ago

https://github.com/fyne-io/fyne