Tech demo for potential future Legion Prof interface.
- Check nested viewport culling
- Slot items by row
- Row check for hover/click
- Better explanatory text
- Utilization plots
- Vertical cursor
- Node selection
- Expand all of a kind (cpu/gpu/etc)Rects on 1-row proc show up at top
- Stop hardcoding kinds
- Multiple profiles
- There is a bug when you move the cursor near the right edge of the screen, the scroll bar gets pushed away
- Timestamps on the vertical cursor
- Horizontal zoom
- Fetch from data source
- Bug in single-row slots not rendered at bottom
- Render data in tiles
- Long-running tasks that cross tile boundary
- Asynchronous data fetch
- Horizontal pan (including drag, keyboard, horizontal scroll wheel)
- Vertical zoom
- Search (with load all data option to get better search results)
- Task detail view
- Keyboard bindings (e.g., arrow keys to select panels, space bar to toggle expand/collapse)
cargo run --release
Ubuntu dependencies:
sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libspeechd-dev libxkbcommon-dev libssl-dev
Fedora Rawhide dependencies:
dnf install clang clang-devel clang-tools-extra speech-dispatcher-devel libxkbcommon-devel pkg-config openssl-devel libxcb-devel fontconfig-devel
You can compile your app to WASM and publish it as a web page.
We use Trunk to build for web target.
- Install Trunk with
cargo install --locked trunk
. - Run
trunk serve
to build and serve onhttp://127.0.0.1:8080
. Trunk will rebuild automatically if you edit the project. - Open
http://127.0.0.1:8080/index.html#dev
in a browser. See the warning below.
assets/sw.js
script will try to cache our app, and loads the cached version when it cannot connect to server allowing your app to work offline (like PWA). appending#dev
toindex.html
will skip this caching, allowing us to load the latest builds during development.
- Just run
trunk build --release
. - It will generate a
dist
directory as a "static html" website - Upload the
dist
directory to any of the numerous free hosting websites including GitHub Pages. - we already provide a workflow that auto-deploys our app to GitHub pages if you enable it.
To enable Github Pages, you need to go to Repository -> Settings -> Pages -> Source -> set to
gh-pages
branch and/
(root).If
gh-pages
is not available inSource
, just create and push a branch calledgh-pages
and it should be available.
You can test the template app at https://elliottslaughter.github.io/test-egui.