News

Blazor Graduates from Experiment to Preview

On the same day we reported "the end of the experiment is in sight" for Microsoft's Blazor project, it did indeed graduate from experimental status to a preview of a new way to do Web UI with .NET languages like C#.

"Blazor is no longer experimental and we are committing to ship it as a supported web UI framework including support for running client-side in the browser on WebAssembly," Blazor guru Daniel Roth said in post yesterday.

The open source Blazor project uses the experimental WebAssembly project to provide a low-level assembly-like language that higher-order languages can compile to for better performance. Or, as resident Blazor expert Chris Sainty explained: "The goal is to provide a single-page application (SPA)-style framework that allows developers to write C# and Razor code and have it run in the browser via WebAssembly."

As we reported yesterday, Microsoft is dropping the separate names for client-side Blazor and for server-side Blazor, the latter of which was dubbed ASP.NET Core Razor Components for a while. The Razor Components/server-side Blazor part of the project was baked into ASP.NET Core to be included in the upcoming .NET Core 3.0 releases, while the more problematic client-side effort (depending upon WebAssembly) was put on hold, not ready for the v3.0 update cycle.

The new scheme is a single client app model with multiple hosting models:

  • Server-side Blazor runs on the server via SignalR; it will ship as part of .NET Core 3.0.
  • Client-side Blazor runs client-side on WebAssembly; while it won't be ready for .NET Core 3.0, Roth said: "we are now announcing it is committed to ship as part of a future .NET Core release (and hence is no longer an 'experiment')."

New features in the first preview include:

  • Templates updated to use the .razor file extension
  • _Imports.razor
  • Scope components with @using
  • New component item template
  • New Blazor icons
  • Blazor support in Visual Studio Code

More information on all of the new features and more is available in the release notes.

In other news, an update of the Blazor site sees the community page being retired in favor of the community-led Awesome Blazor site, featuring demos, sample projects, tutorials, extensions, libraries, videos, articles and more.

Roth also pointed out more Blazor resources from .NET tooling vendors such as Telerik, DevExpress and Syncfusion.

"A little over a year ago we started the Blazor experimental project with the goal of building a client Web UI framework based on .NET and WebAssembly," Roth said. "At the time Blazor was little more than a prototype and there were lots of open questions about the viability of running .NET in the browser. Since then we’ve shipped nine experimental Blazor releases addressing a variety of concerns including component model, data binding, event handling, routing, layouts, app size, hosting models, debugging, and tooling. We’re now at the point where we think Blazor is ready to take its next step."

As Roth explained in a YouTube video earlier in the week, upcoming work on the project includes: support for static assets in component class libraries; support for ahead-of-time compilation for WebAssembly (in conjunction with the Mono team); authentication and authorization; client-side debugging; and more.

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube