# A tale of 2.5 UIs

**URL:** https://discourse.vtk.org/t/a-tale-of-2-5-uis/16135
**Category:** Support
**Tags:** trame, vtkwasm, webgpu
**Created:** [November 11, 2025, 3:15pm UTC](https://discourse.vtk.org/t/a-tale-of-2-5-uis/16135 "2025-11-11T15:15:59Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![Joe\_Tristano](https://discourse.vtk.org/user_avatar/discourse.vtk.org/joe_tristano/32/10300_2.png) [@Joe\_Tristano](https://discourse.vtk.org/u/Joe_Tristano)
#### Post date: [November 11, 2025, 3:15pm UTC](https://discourse.vtk.org/t/a-tale-of-2-5-uis/16135/1 "2025-11-11T15:15:59Z")

</div>

**Vtk ui**

Hello

Im writing for those who may find themselves in the same situation as well as for any guidance from the experts

I started down a path of writing an interactive vtk application. I am inspired by fui (iron man, ansys disocvery). I was intrigued with trame and vtk wasm. However when thinking through deploying this at scale, it would seem that i would need an instance of trame running per user on demand through my kubernetes cluster as I wanted to control lifetime and resource and be a good citizen on the shared resource.

So, in order to provide something to our users, I decided to write a desktop app that could interact with our web services since our users’ workstations are sufficient to interact with the data.

That lead to multiple trial and error experiments that I will list here:

1. Trame with local access: This proved difficult as the browser does not have local access. I would have to package a tkinter file open dialog from a locally running trame

2. Lastly, knowing about imgui from a colleague through polyscope usage, i tried imgui and vtk.

Overall thoughts:

1. While trame is great I see two barriers:

2. I would love some official vtk imgui python support in the future as that has tons of interactions and ui elements to make a completely immersive experience

I would be interested in hearing other’s experiences

Regards

Joe

---

<div class="post-metadata">

### Author: ![Sebastien\_Jourdain](https://discourse.vtk.org/user_avatar/discourse.vtk.org/sebastien_jourdain/32/100_2.png) [@Sebastien\_Jourdain](https://discourse.vtk.org/u/Sebastien_Jourdain)
#### Post date: [November 11, 2025, 10:54pm UTC](https://discourse.vtk.org/t/a-tale-of-2-5-uis/16135/2 "2025-11-11T22:54:03Z")

</div>

Thanks Joe to take the time reporting your experiments.

For deployment at scale, we are working on web portal leveraging kubernetes to run any trame application that you may want to expose and/or use along with user access control built-in.

For trame local access, it is actually pretty easy to do it with tauri (which you didn’t want to use). You can see an example [here](https://github.com/Kitware/QuickView) even if we used a web ui for local file browsing to allow HPC distributed execution. But the file browsing (to save file) using tauri is done [here](https://github.com/Kitware/QuickView/blob/master/src/e3sm_quickview/components/tools.py#L310-L314).

For local/desktop setup, I would argue that you don’t need to use WASM and therefore skip the data duplication you are mentioning.

---

<div class="post-metadata">

### Author: ![Joe\_Tristano](https://discourse.vtk.org/user_avatar/discourse.vtk.org/joe_tristano/32/10300_2.png) [@Joe\_Tristano](https://discourse.vtk.org/u/Joe_Tristano)
#### Post date: [November 11, 2025, 11:18pm UTC](https://discourse.vtk.org/t/a-tale-of-2-5-uis/16135/3 "2025-11-11T23:18:32Z")

</div>

Hi @Sebastien_Jourdain Thanks for the feedback! It’s great to hear that you are all thinking about deploying trame at scale. Tauri, while promising, introduces another bit of complexity into the stack. How would one avoid wasm locally and use desktop vtk rendering?

My experience with trame was quite good. Experience w imgui with good too

Thanks

Joe

---

<div class="post-metadata">

### Author: ![Sebastien\_Jourdain](https://discourse.vtk.org/user_avatar/discourse.vtk.org/sebastien_jourdain/32/100_2.png) [@Sebastien\_Jourdain](https://discourse.vtk.org/u/Sebastien_Jourdain)
#### Post date: [November 12, 2025, 4:59pm UTC](https://discourse.vtk.org/t/a-tale-of-2-5-uis/16135/4 "2025-11-12T16:59:32Z")

</div>

I would use “remote rendering” with trame-rca or trame-vtk depending on your speed needs.
