Kristoffer Strube
banner
kstrubeg.bsky.social
Kristoffer Strube
@kstrubeg.bsky.social
.NET developer, Microsoft MVP, and Blazor Consultant.
GitHub: https://github.com/KristofferStrube
Had a great meetup in Aarhus .NET User Group last night, where I got to talk about what’s new for ASP .NET Core 10. 😃 My new workplace was the host which was very convenient and appreciated. 😊
#dotnet #aspnetcore #blazor
October 22, 2025 at 8:17 AM
Got renewed for my second year as Microsoft MVP. 😀
This time also in the category Web Development.
#dotnet #MVPBuzz
July 10, 2025 at 8:37 PM
I found my name. 😁 #MVPBuzz #MVPSummit
March 25, 2025 at 9:41 PM
At the pre-day for the #MVPSummit.
Having a great time meeting new people and saying hi to some existing friends for first time in real-life!
#MVPBuzz
March 24, 2025 at 10:22 PM
I finally found a way to make tests for Blazor JS wrappers in a minimal format. I used to have a lot of boilerplate to control what was evaluated in the browser in each test, but I found out I didn't need that distinguishment, so now it is super simple. 😀
#dotnet #blazor #tests
March 13, 2025 at 6:26 PM
Blazor.WebAudio now also has the option to define custom oscillator types for OscillatorNodes. I made a small video that illustrates how simple a series of sine waves can create any waveform. 🔊
#dotnet #blazor
Project: github.com/KristofferSt...
Demo: kristofferstrube.github.io/Blazor.WebAu...
February 4, 2025 at 12:09 PM
Been working on a small WYSIWYG editor for formulas in Blazor during the last week. I will use this in a new demo for custom waveforms in Blazor.WebAudio next week. 😁
#dotnet #blazor #math
Project: github.com/KristofferSt...
Demo: kristofferstrube.github.io/Blazor.Formu...
January 28, 2025 at 6:28 PM
I found a cool project I had not seen before: DotNetInternals by @janjones.bsky.social
An online tool for seeing the compiled result of C# programs, Razor components, and CSHTML files.
#dotnet #Blazor
Project: github.com/jjonescz/Dot...
Demo: lab.razor.fyi
January 22, 2025 at 8:29 PM
During the last week, I have worked on adding support for PannerNodes in Blazor.WebAudio. Here is a small demo that illustrates its use. The demo works best with a dual-speaker setup. 🔊🔊
#dotnet #blazor #audio
Demo: kristofferstrube.github.io/Blazor.WebAu...
Project: github.com/KristofferSt...
January 13, 2025 at 3:08 PM
Totally forgot to share that I released the first non-alpha version of Blazor Graph.Editor at the start of this month. 😀Now it supports controlling the edge color and arrow visibility. Enjoy this ❤
#dotnet #blazor
Project: github.com/KristofferSt...
Demo: kristofferstrube.github.io/Blazor.Graph...
December 12, 2024 at 9:18 PM
Ready to watch .NET Conf at the local .NET Watch Party in Aarhus, Denmark with #ANUG #DotNetConf #dotnet
November 12, 2024 at 3:59 PM
I found a cool sample of using Blazor.WebAudio during the weekend by SEOKWON HONG. He made an audio player that shows a frequency plot while playing a song. Pretty mesmerizing to look at.
#dotnet #blazor #audio
Demo: nameofseokwonhong.github.io/music
Project: github.com/nameofSEOKWO...
November 5, 2024 at 12:28 PM
Check the full changelog here: github.com/KristofferSt...
October 29, 2024 at 9:47 PM
A couple of members related to events exposed on the FileReader have also been deprecated to align with the standard ways to handle event listeners as defined in Blazor.DOM. This makes it easier to not accidentally leak memory in event listeners.
October 29, 2024 at 9:46 PM
Version 0.4.0 of Blazor.FileAPI released! 🔥
Making it easier to not leak memory when working with Blobs, Files, and FileReaders in Blazor as they now implement IJSWrapper which also makes them IAsyncDisposable.
#dotnet #blazor
Project: github.com/KristofferSt...
October 29, 2024 at 9:46 PM
I was accepted into the Microsoft MVP Award Program today! I don't think I can express in words how happy I am about this milestone and the possibilities it will bring in the future.
I am looking forward to connecting to all the other MVPs in the program. 😁
mvp.microsoft.com/en-US/MVP/pr...
May 1, 2024 at 8:25 PM
Today, I refined my take on a strong way to test my Blazor wrappers using #PlayWright. Here, I'm asserting the Exception type that gets thrown when we use overconstrained settings in Blazor.MediaCaptureStreams.
#blazor #dotnet #testing
PR: github.com/KristofferSt...
April 10, 2024 at 7:52 PM
I am progressing on my Blazor Web Audio API wrapper this weekend, going back through some classes and adding documentation. It is a lot of work, but it will make a huge difference in ease of use.
project: github.com/KristofferSt...
September 23, 2023 at 8:55 PM
An old silly project I really enjoy is my demo of a distributed whiteboard written with Blazor. Every so often, I check it and find a drawing that someone visiting has left.
Project: github.com/KristofferSt...
Try it out here: kristofferstrube.github.io/DistributedD...
#blazor #dotnet #svg
September 20, 2023 at 2:51 PM
I've had fun trying out Playwright for .NET and Blazor tonight. I'm making E2E tests for my Blazor Media Capture and Streams API to test something real. It took some wrangling to get it to work with the media API, but I got some okay results.
#dotnet #blazor #testing
September 7, 2023 at 8:41 PM
I am working on getting error-handling JSInterop into my Blazor Web Audio wrapper. 😀🐞 Making for easy and safe interactions with all the cool sound capabilities of the browser.
#blazor #dotnet #csharp #sound
Project: github.com/KristofferSt...
September 5, 2023 at 6:11 PM
Another day, another side project. Introducing Blazor.GraphEditor. It builds on my SVG Editor but focuses on automatic construction, layout, and manipulation of graphs. For now, I've implemented a way to make force directed layouts.
#blazor #svg
https://github.com/KristofferStrube/Blazor.GraphEditor
August 17, 2023 at 6:30 PM
Writing default! to remove warnings for nullability when using Parameters in Blazor always felt like a hack. So I'm happy to see that C# 11 gives a nicer solution to this that doesn't feel as hacky by using the new required keyword. #Blazor #dotnet #csharp
July 16, 2023 at 3:26 PM