Details
-
User Story
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
7.0 (Next Major Release)
-
None
Description
What is the benefit? Why is this valuable?
- In big companies, deciding on server-centric or client-centric web solution may be difficult early in a product lifecycle. Allowing customers to delay this decision, and run apps both client side and server side can ease adoption of WebAssembly as a technology.
- Smooth transitioning from legacy (corporate) server-centric web solutions towards WebAssembly apps, where legacy apps can be web-enabled before they are rewritten using WebAssembly .
- Transparent support for clients that do not support WebAssembly, or do not have the resources needed to execute the app locally.
- Enable hybrid UIs where most of the functionality is implemented in WebAssembly, but some of the functionality is provided through server side rendering
What are common use cases?
- Legacy corporate infrastructure may require maturing before they are able to deliver WASM apps. Having an option for Qt App Streaming will help during a transition to fully WASM based apps.
- Dynamic "load-balancing" where apps are run server-side or client-side depending on client capabilities and computational resources.
- Enable webifying legacy Qt apps that can not be compiled as WASM.
Technical information
The idea is to support different hosting models for Qt apps similar as Microsoft's Blazor infrastructure ASP.NET Core Blazor hosting models
One basic building block needed to support Qt Apps running server side is to implement a web component that supports the VNC protocol, and that can be embedded in a web browser. If such a component can also run as a QML component, we will enable hybrid apps.
From this starting point, we would enable customers to implement the required back-ends for full server side app hosting with option to deliver WebAssembly content.
Attachments
Issue Links
- relates to
-
QTBUG-102090 Remote UI
-
- Open
-