Is anybody using Blazor for anything that isn't a toy? I'm interested in using it at work but because it appears that the payload is relatively large I wouldn't want to use it for anything that wasn't internal facing.
Client-side Blazor is not production-ready with Asp.NET Core 3.0. It's coming in a later release and only server-side Blazor is launched today.
We've been using the server-side components for lots of internal apps. It's very fast and productive to work with, and a great option for internal/enterprise/LOB apps that don't have a lot of users and can handle an occasional reconnection/interruption.
We're exploring using server side blazor for a desktop app. You just bundle the "server" right into the app together with a webview to show your UI. No performance issues because there's only ever one user and you're not relying on a network (or mono or wasm). More exciting, it feels like C# in the browser, but there's no sandbox or threading limitations to speak of. So far it's pretty awesome.
Not knowing much about Blazor, what are you referring to here? The size of the WASM blob for your own code, or does Blazor have an associated runtime that's large? And what is considered "large"?
I guess I was hoping the WASM/IL trimming would be more aggressive. My comparison isn't very scientific, I'm mostly comparing things like https://fsbolero.io/TodoMVC/ which is done with Blazor vs https://yew-todomvc.netlify.com/ which is done with Yew. The former is nearly 6MB in total, the latter is 135KB.
Blazor client-side works by using the Mono runtime which is compiled and run as WASM. Your application is still delivered as standard DLLs and interpreted by that runtime.
They're working on making the runtime smaller and faster to start still a lag since your code has to be parsed and interpreted everytime, although the DLLs are pretty small already and easily compressed.
We've been using the server-side components for lots of internal apps. It's very fast and productive to work with, and a great option for internal/enterprise/LOB apps that don't have a lot of users and can handle an occasional reconnection/interruption.