Implement `--serve` by forwarding to app.rerun.io
We've recently added support for spawning a native viewer from an executable available in PATH.
This is the same idea, but for the web viewer: rather than embedding all the web stuff into the SDK, we can simply start the usual TCP and WebSocket servers and open the user's browser to the appropriate pre-hosted web viewer, e.g. https://app.rerun.io/version/0.9.1/index.html?url=ws://localhost:9877.
We should still offer the option to use the embedded web viewer if/when people want to use the web-viewer without internet access. Or better yet, we inform the user of how to download a binary release of the Rerun CLI, and how to use that binary to host a web-viewer.
Linear issue: https://linear.app/rerun/issue/RR-2689/remove-web-viewer-wasm-from-pypi-packages
Random thought since you mentioned CORS-driven nightmares: in-between the "embed the wasm blob and serve it locally" and "just point the user to the hosted one" solutions, there might also be a halfway solution which is "automatically download the wasm blob from our CDN the first time the user tries to --serve it, cache it locally, and serve it locally from here on".
I don't think it's an either/or situation: all of them can be useful in different contexts, probably? 🤷