Comment

Comment by SeanAnderson

I cannot recommend immediate mode GUI programming based on the limitations I've experienced working with egui (https://github.com/emilk/egui) in Rust.

egui does not support putting two widgets in the center of the screen: https://github.com/emilk/egui/issues/3211

It's really easy to get started with immediate mode and bust out some simple UIs, but the second you start trying to involve dynamically sized elements and responsive layouts -- abandon all hope. The fact it has to calculate everything in a single pass makes these things hard/impossible. Coming from a strong CSS/React background I find the limitation maddening.

... that said, I'm still using it to build a prototype UI for https://ant.care/ (https://github.com/MeoMix/symbiants) because it's the best thing I've found so far.

I'm crossing my fingers that Bevy's UI story (or Kayak https://github.com/StarArawn/kayak_ui) becomes significantly more fleshed out sooner rather than later. Bevy 0.13 should have lots more in this area though (https://github.com/bevyengine/bevy/discussions/9538)

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton