First of all, let me welcome you to our community! Feel free to Introduce yourself 🙆 to the community!!
@Kateryna will surely be able to give you more details if I miss something, but here’s my attempt
The presentation viewer isn’t built for a specific target application, but rather for a specific data structure in your stream (please correct me if I’m wrong Kat ). There is no limitation for it to work on data from other connectors (such as Revit data).
As for the size/performance, we’ve recently released a new version of the viewer that should bring some big performance improvements (but it still hasn’t made its way to the public server yet ). Obviously, performance will also depend on the amount of data you want to load, the speed of your internet connection and the device you are trying to load it from.
I haven’t tested the limits of viewer but maybe @cristi can give you some insight on how much is “too much” data.
As for your last question, the answer is none of them. Data is processed in GH and sent to speckle “as-is”; with all necessary information for the presentation to work (a set of meshes, and a set of “named slides”). Then the viewer processes that data (geometry and metadata for the presentation) and displays the geometries/camera-views/etc as specified.
So no cloud computing or streaming from a running machine This means you’re not dependent on an extra part of infrastructure; if the speckle server is running, your presentations will be available
Hope that answered your doubts! Let us know if you have more!