If your use case is in a browser, then you want to leverage the ReplPad.
You could simply put the GUI in its own dockable window tab--which could sometimes be full screen, and sometimes share the screen with a Repl. See how the code editor widget was implemented. Instead of a code editor, imagine a graphics window there.
Unfortunately there's no way in ImGui itself to embed an iframe. So the Repl would have to be side by side or flipped to via a tab.
I believe what you want here isn't WASI. You want a WebAssembly "side module" written in C/C++ that the ReplPad can load into a tab (or allow to take over the whole screen)... and share the interpreter state between that side module and the ReplPad.
If this were done correctly, the ReplPad's Wasm could export the Ren-C API directly to the side module, so you could call into the interpreter without needing to use Emscripten facilities to jump out to JavaScript just to call the JS wrappers to call back into the Wasm interpreter again. Doing it incorrectly and calling JavaScript as a middleman could be a good first test.
You're better off in your C code using calls to Rebol for networking, and let the ReplPad's implementation of reading URLs and such (that go through JavaScript) do the work...rather than use Emscripten's janky layer that does the same thing but piped through weird and brittle emulations of Posix stuff.
(No offense to Emscripten intended--it's hard work done to provide for those who need it. But if you're taking a Rebol interpreter for granted and have access to the API that's already implementing natives in JavaScript, that's preferable to use.)
It does seem to have an active community. But my personal opinion is that Dear ImGui is very ugly, compared to e.g. TurboBadger.
And for that matter, I think modern CSS/HTML is pretty well tailored to the domain of UI layout with buttons and such. Reinventing it without any truly fundamental great ideas seems like wasted effort to me. So I'd think that you're better off just learning a bit of JavaScript and picking some JS UI framework. That's what Brian Otto did, if you missed this talk:
However... I do think there are some applications for C++ GUI code that doesn't really overlap what browsers are designed to natively do reasonably well. So putting a Dear ImGui window in a tab and having it be able to make calls into the interpreter wouldn't be a bad thing to be able to do.
The trick though is that aspect of getting it to be able to make plain C calls into the libRebol API.