9d3f70e9fe
Add a canvas leaf-widget island to the techdemo that receives server snapshots through Effect::event/CustomEvent while keeping slhx core and runtime semantics unchanged. req: interop/001 req: examples/001 req: examples/005
29 lines
1.1 KiB
Markdown
29 lines
1.1 KiB
Markdown
# slhx full techdemo
|
|
|
|
Run:
|
|
|
|
cargo run -p slhx-techdemo
|
|
|
|
Open <http://127.0.0.1:3002>.
|
|
|
|
This is a polished Linear-style product demo for planning typed work across lanes. It is tailored to showcase slhx strengths:
|
|
|
|
- modern SSR-first UI
|
|
- generated resource modules from `.heml`
|
|
- hemplate partials for issue lanes, cards, and inspector panels
|
|
- native form posts carrying `__h` numeric handle ids
|
|
- multi-target `application/slhx` EffectBatch responses
|
|
- generated slot updates instead of selectors
|
|
- root-scoped runtime lowering (`data-hid`, `data-sid`)
|
|
- page-enhancer navigation with native link fallback
|
|
- SSE server push into a generated slot
|
|
- drag-and-drop lane moves persisted by typed server handlers through the slhx runtime
|
|
- an opaque canvas island fed by `Effect::event`/`CustomEvent`, without teaching slhx core about the widget
|
|
- no user-authored browser JavaScript in slhx-managed UI; the island JavaScript is a leaf-widget escape hatch
|
|
|
|
Verification:
|
|
|
|
cargo test -p slhx-techdemo --test e2e
|
|
cargo test -p slhx-techdemo --test browser_e2e
|
|
mutest -p slhx-techdemo -f examples/techdemo/src/main.rs -F 'registry' -j 2 --timeout 90 -- --test e2e
|