#Blazor
Deploying and Hosting #Blazor Static Web Apps for FREE on #Azure has never been easier with #visualstudio, in fact it is just a few button clicks away. I show you this new awesome feature:
Wednesday at 2PM ET I'll revisit episode 45 using .NET 7 https://youtu.be/jYkUV1fL1eQ comparing performance of WebAPI vs gRPC! #blazor

Got my Media Capture Streams and Web Audio Blazor wrappers working today so that I can now connect a Media Stream to an Analyzer Node to make intensity and frequency plots from live sound in real-time.
#blazor #dotnet #audio
Project: https://github.com/KristofferStrube/Blazor.WebAudio
Demo: https://kristofferstrube.github.io/Blazor.WebAudio/AnalyzeMediaStream

The getUserMedia method really has a lot of checks before we can access a media device. I love how much information and context we can put into XML Docs to give developers context while developing.
#blazor #dotnet
Project: https://github.com/KristofferStrube/Blazor.MediaCaptureStreams

📺.NET at Microsoft Build 2023
All of the .NET sessions from Microsoft Build 2023 including microservices, C#, ASP.NET Core, .NET MAUI, cloud native, and so much more!
https://www.youtube.com/playlist?list=PLdo4fOcmZ0oV0mbay2wxFS_ZVRg6cxjdM
@tedmob69 @efonsecabcr @jamesmontemagno I think a bigger use case than "a couple pages" is the ability to take a full working web application from #Blazor and insert it into #dotnetMAUI completely. This means one app across web, desktop, and mobile. https://github.com/dymaptic/GeoBlazor/tree/develop/samples is an example. I created one library of Blazor pages, and then apps for Blazor server, #webassembly, and MAUI, all with the same code.
@bitbear @khalidabuhakmeh @damselfly I don't hate web development. I do not think Javascript is dead-end. I also don't think it will hold the monopoly on the future that it has in the past few decades. I'm glad that Microsoft has created an option for strongly-typed, full-stack development in #csharp #blazor
@efonsecabcr my use case is wrapping a #JavaScript library for #blazor. Sometimes I need to pass an html string to a JS function, without actually rendering it from #dotnet. It also means razor becomes an easy templating language for things like email html templates.
HtmlRenderer class in #dotnet 8 will be extremely useful for #blazor libraries like #GeoBlazor.
https://learn.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.components.web.htmlrenderer?view=aspnetcore-8.0
Imagine you’ve been on the Microsoft .net stack all your career and you want to learn something new. I love #blazor but thinking of trying #reactjs or #angular. I know very little #javascript. Where do I start?
Thanks to the Blazor Developer Italiani community for the awesome work organizing the #BlazorConf2023. It was an amazing day! Lot of great networking and technical content. Thanks for having me! #Blazor #dotnet
It’s #BlazorConf2023 day in Milan and online! There’s still time to register and follow the event online: https://blazorconf.it/ I’ll be speaking at 2 PM about using Blazor to build apps for Teams with the Teams Toolkit. Join me! #MicrosoftTeams #blazor #dotnet
Blogged: Typed exceptions for JSInterop in Blazor
In this article, we look at how the existing error-handling implementation for JSInterop is made in Blazor. We then look at how we can map the error types defined in the standard WebIDL specification to C# exceptions, and in the end, we show some examples of how to use this in practice when making JS invocations.
#Blazor #CSharp #JSInterop #dotnet
https://kristoffer-strube.dk/post/typed-exceptions-for-jsinterop-in-blazor/
Hey #Blazor community, for folks out there who have used #TelerikUIForBlazor, I’d love to hear your merit-based criticisms of the component library. I’m not asking you to shit on other developers’ hard work, so please be respectful.
I’m asking because I’ve been trying to help my team see some challenges that are around the corner for us, and they need specifics, so I’m trying to cast a wider net for some anecdotes.
I’ll reply with my own experience (unlisted).
@jasonstcyr https://build.microsoft.com/en-US/sessions/da223f08-abb2-4f38-87de-0856ffa22317?source=/schedule at #msbuild today they fleshed out #blazor united, although I'm not sure if they called it that.
Final (?) prerelease of #cslanet 7.0.0 is now online.
Starting fresh with the #Blazor / #ASP stack + ecosystem feels *way* less complicated than re-entering the #nodejs /js stack+ecosystem after a decade of exp followed by a ~3yr semi-break.
Wtf #javascript
The next feature for my File System Access Blazor wrapper is Exceptions. Making it both easy and discoverable to handle the different exception cases that exist when working with the file system.
Will release soon.
#dotnet #blazor #csharp #webidl
Project: https://github.com/KristofferStrube/Blazor.FileSystemAccess

I've been working on this as an almost-from-scratch C# project since April 9th this year and I'd be a LOT further along except:
I decided to switch to #Blazor from MVC, which has been a learning curve
I want this project be world class in terms of #accessibility -- and my skills in that area are sorely lacking. I've had to take several steps back and really consider certain aspects of the UX. A real learning experience.
I am proud of how much I've accomplished with #PiggyBank today. It now calculates a proposed annual budget from previous actual transaction amounts and has a good start on a page for view those amounts.
I also replaced all of the hard-coded strings that are the #Blazor-native way to express paths with a PageRoute class that contains constants and template methods for routes.
Supercharging #Blazor Development with BlazmExtension - A New #VisualStudio Extension
https://engstromjimmy.com/post/2023-05-15-BlazmExtension
@davidwengier #blazor all the things!
Started to google for a nice looking prompt dialog in Blazor, then remembered I was using Blazor in Win Forms so a Message of works just fine.
@jasonbock on stage at #vslive Nashville, giving the background on #webassembly and #blazor
It's alive! I've launched my new online, self-paced #blazor workshop.
Use Blazor's component model to its full potential, to build better web applications, faster.
[D] Summary of Senate hearing on AI regulation
https://www.linkedin.com/feed/
Discussions: https://discu.eu/q/https://www.linkedin.com/feed/
The new Blazor Web App template for .NET 8 is starting to take shape: https://github.com/dotnet/aspnetcore/pull/48285 #blazor #dotnet
@badcel @roughiain @tewha #Blazor UI is fully unit-testable without mvvm, one of the reasons I consider it an unnecessary abstraction (also Blazor's implicit 2-way binding). If there were a clear way to do in #MAUI what I currently can do in Blazor, I would probably choose that over mvvm.
I'm speaking at #vslive in Redmond on the Microsoft campus in July - talking about #dotnet, #blazor, and #cslanet. Lots of other great speakers and content, all on campus where the cool tech is being created!
I hope you can join me - https://bit.ly/414W83p
@tewha my team is currently having a discussion about whether to use #MVVM going forward for new #WPF and #MAUI projects. We do a lot of #blazor so the extra ceremony is tedious, but I'm not sure there's a better pattern for the Xaml frameworks. But I concur with your opinion, the view should launch dialogs, but can be controlled by a bound property in the VM
#dotnet
🆕#AspNetCore updates in .NET 8 Preview 4
⭐Streaming rendering for Blazor components
⭐Blazor SSR form handling
⭐Minimal APIs expand form binding
⭐Native AOT improvements
⭐API template includes .http file
⭐Identity API endpoints
⭐#AspNetCore metrics
https://devblogs.microsoft.com/dotnet/asp-net-core-updates-in-dotnet-8-preview-4
Blazor Server and Blazor WebAssembly share many similarities but also have significant differences.
In this week's video, I will share five differences that impact deciding whether to use Blazor Server or Blazor WebAssembly for your next project.
Okay, so .NET 8 Preview 4 is a complete miss for #Blazor WASM.
It's unusable.
That's not good for #MSBuild next week.
☑️ Wrong config settings are loaded
☑️ Can't deploy it, it doesn't run.
☑️ Hot Reload fails big time with every change
Did #Microsoft test it? Just once?
About to fly to Nashville for #VSLive, talking about #blazor, #dotnetmaui, #dotnet and #cslanet.
Hope to see you there!

Sneak peak of my upcoming session for #BlazorConf2023: a Blazor app running into Teams, powered by Azure OpenAI and ChatGPT #AI #MicrosoftTeams #Blazor
Working on some improvements for my MAUI-Blazor talk that I will give on Techorama next week.
@khalidabuhakmeh In this case it gave me a way to change a public parameter (#blazor property) type without pushing a breaking change.
On this week's #Blazor Community Standup:
🚀 Blazor .NET 8 Updates
⭐ Daniel Roth, Jon Galloway, Mackinnon Buck
🗓 Tuesday | May 9
⏰ 10:00 AM Pacific | 17:00 UTC
▶️ https://youtu.be/MaLjiR9YSbs
#dotnet #AspNetCore
@EricBeaudry @mobiuscog take a look at Photino https://www.tryphotino.io/ for #blazor on #linux
@mobiuscog I think you are referring to MAUI Blazor hybrid mode which is not supported on Linux desktop. Afaik #blazor alone requires a browser or web viewer (which is what MAUI wraps around your blazor to make it run like a desktop app). The UI options are thus limited when targeting Linux with #dotnet. Avalonia might be worth looking into or you revert to a browser. I’d be happy to learn if you find more viable options.
Refreshing my knowledge on the upcoming #Blazor QuickGrid component.
While it can work with Blazor WASM, it feels more natural in Blazor Server.
With https://Tusk.Ninja's ''Txt2Img' you can create an image online, upload a background image (optional), add text, emoji's etc. and post it directly as a 'Toot' to your #Mastodon followers. Works on mobile and desktop. It adds 'alt-text' automatically too.
It's a #dotNET 8 Preview 3 #Blazor #WASM SPA (web application)
The introduction of Dev Tunnels in Visual Studio 2022 is a game changer for .NET Developers. It easily enables you to put your localhost online and get a full URL for debugging and sharing. Check it out: https://youtu.be/NPJhrftkqeg
#dotnet #dotnetmaui #visualstudio #aspnetcore #programming #devtunnels #blazor
I've been helping out with this project `Vite.AspNetCore` for #aspnetcore devs.
It starts the #vite dev server, generates and uses the manifest, has tag helpers.
It works with MVC, Razor Pages, and #blazor.
The author, Quetzal Rivera, has done a great job and you should head over and give this project a star.
Any #Blazor Server experts out there know if there is any way for the browser JS to shutdown the Blazor connection and later call Blazor.start() without reloading the page?
No pre-rendering involved, just a rendering mode "Server"
Extended the Spectrogram demo in my Web Audio API Blazor wrapper a little more today. Adding a Frequency diagram. Next, I'll wrap the MediaStreamAudioSourceNode to get microphone input and analyze that instead.
#blazor #dotnet #audio #svg #webidl
Project: https://github.com/KristofferStrube/Blazor.WebAudio
Having a lot of fun rebuilding my pet project #RaspberryPi audiobook/media player in #dotnet and @avaloniaui.
The previous version was a #Blazor UI served to Chrome running in kiosk mode, with OS interactions such as scanning and connecting to bluetooth headphones done by a backing API. Doing it all in a single Avalonia executable means that everything is faster and more memory efficient.
My blog post on type-safe real-time communication in .NET got featured on the ASP.NET Community Standup yesterday and I got a little message into the stream in real-time via my sticky note demo app. I love the great work people like
@jongalloway and Mackinnon Buck do weekly on the stream.
Check out a full replay of the stream which explored the Azure Data API builder here: https://www.youtube.com/watch?v=7W6h4PuQom8&ab_channel=dotnet
I've found that when building an #aspnet #blazor app with assistance from OpenAI's #GPT4 model, I need to give it a specific system prompt:
> You are a helpful assistant helping me build an ASP.NET Blazor WebAssembly with .NET 7 Core
Otherwise, it gets easily confused and provides Razor markup instead of Blazor.
I thought I'd recreate the #Blazor demos with #lit web components.
It's pretty neat to have self-contained components that load really fast.
The one drawback I found is Lit components have isolated styles, so components need to import their own styles or your style sheets have to be modified to target the shadow dom elements. #dotnet #JavaScript #aspnetcore
I really wish that #microsoft would use #blazor in one of their large applications so that they could dogfood their own product and make it better. Our team would love to use #blazor, but the tooling support for it in #VisualStudio is just abysmal... Waiting for the completion for a single property in an empty project takes over 45 seconds for the IntelliSense window to pop up. =/
One more for #blazor peeps!
Create the same file with multiple extensions for the same component all in one *even simpler* shot!
Imho, pushing #Blazor as anti #JavaScript does more harm than good.
1. In a reasonably complex app, you're going to write JavaScript
2. It frames it as an "either/or" when it's really "both"