dioxus/packages/liveview
Jonathan Kelley 508c560320 Feat: massive changes to definition of components
This change switches back to the original `ctx<props>` syntax for
commponents. This lets lifetime elision to remove the need to match
exactly which lifetime (props or ctx) gets  carried to the output. As
such, `Props` is currently required to be static. It *is* possible to
loosen this restriction, and will be done in the future, though only
through adding metadata about the props through the Props derive
macro. Implementing the IS_STATIC trait is unsafe, so the derive macro
will do it through some heuristics.

For now, this unlocks sharing vnodes from parents to children, enabling
pass-thru components, fragments, portals, etc.
2021-06-01 18:33:15 -04:00
..
examples Feat: massive changes to definition of components 2021-06-01 18:33:15 -04:00
src wip: more liveview and webview custom client 2021-03-16 14:28:54 -04:00
.gitignore wip: need iterator for bracketed children 2021-03-17 10:35:21 -04:00
Cargo.toml wip: need iterator for bracketed children 2021-03-17 10:35:21 -04:00
index.html WIP: move to static props 2021-05-31 18:55:56 -04:00
README.md wip: more liveview and webview custom client 2021-03-16 14:28:54 -04:00

Livehost

Stream events from a server to a client.

This crate provides drivers for Actix, Warp, and Tide to run coupled frontend and backend.

This comes in the form of two approaches:

  • tight coupling: frontend and backend are locked together
  • loose coupling: hooks subscribe a component to a server using the suspense mechanism

Tight coupling is basically an implmentation of loose coupling where all events move through the backend connection. This coupling option has higher latency but is very simple to deploy. We use this approach for dioxus-webview where latency is minimal (hosted locally) and we want builds to be simple - no need to manually bundle a custom frontend because everything is server rendered.