D036 - GUI: egui, not Tauri
decided ยท 2026-08-19
The deciding constraint is where emulated video goes. egui shares a Vulkan surface with the emulator output natively, which is how the menu-as-overlay style most emulators use actually works. A webview cannot host an emulator framebuffer without blitting frames into it - the wrong place to spend a frame budget - leaving two windows and two event loops.
Windows PC is the target. Mobile would be nice eventually and is not worth taxing the start of the project for; D034 keeps that door open, since a Tauri or mobile shell would be another shim rather than a rewrite.
egui renders on our own Vulkan device via
egui-winit plus an ash-backed renderer, not
eframe's wgpu - otherwise two graphics stacks contend for
the same GPU and the UI cannot share a surface with the output.