Open suprjinx opened 6 months ago
Here is a crazy idea to avoid all the security issues associated with hosting something that hasn't been developed with public-facing hosting in mind: what about compiling fml to webassembly and then hosting it on github pages? It would then run entirely in the user's browser, as a separate, private, instance. We would of course load it with a pre-populated DB for demo purposes.
For a user that wants to then feed their own data by running some experiments, I believe that our various installation methods (especially the
pip
one) are super user-friendly and would get them to spin up their own instance for experimentation.
@jgiannuzzi I did some investigation about this, and that would have been a great solution, but I think right now it's a bit difficult to compile fml to WebAssembly, due to some dependencies it uses that involve some systemcalls that are not supported by WebAssembly, in particular I see problems for tcplisten used by the fiber library.
I think this could be done by exposing a function that mimicks fetch
and ends up calling httptest
into the fiber app. The compiled webassembly module will end up with a different entrypoint that the regular main
function anyway.
Here is a crazy idea to avoid all the security issues associated with hosting something that hasn't been developed with public-facing hosting in mind: what about compiling fml to webassembly and then hosting it on github pages? It would then run entirely in the user's browser, as a separate, private, instance. We would of course load it with a pre-populated DB for demo purposes.
For a user that wants to then feed their own data by running some experiments, I believe that our various installation methods (especially the
pip
one) are super user-friendly and would get them to spin up their own instance for experimentation.