Kristoffer Strube
@kstrubeg.bsky.social
π€ 419
π₯ 43
π 78
.NET developer, Microsoft MVP, and Blazor Consultant. GitHub:
https://github.com/KristofferStrube
Released version 4.0.0 of Blazor.FileSystemAccess today! π It now targets the newest versions of my Blazor.FileSystem, Blazor.FileAPI, Blazor.Streams, Blazor.DOM, and Blazor.WebIDL packages, which has been a long-requested feature. π§΅(1/5)
#dotnet
#blazor
github.com/KristofferSt...
loading . . .
GitHub - KristofferStrube/Blazor.FileSystemAccess: A Blazor wrapper for the File System Access browser API.
A Blazor wrapper for the File System Access browser API. - KristofferStrube/Blazor.FileSystemAccess
https://github.com/KristofferStrube/Blazor.FileSystemAccess/
8 days ago
1
4
1
I heard some friends talk about the WebMCP browser API during
#MVPSummit
. So I used some time on the way home from the US to make a Blazor wrapper for it! π
#dotnet
#WebMCP
#Blazor
Project:
github.com/KristofferSt...
Demo:
kristofferstrube.github.io/Blazor.WebMCP/
loading . . .
GitHub - KristofferStrube/Blazor.WebMCP: A Blazor wrapper for the WebMCP browser API.
A Blazor wrapper for the WebMCP browser API. Contribute to KristofferStrube/Blazor.WebMCP development by creating an account on GitHub.
https://github.com/KristofferStrube/Blazor.WebMCP
24 days ago
0
2
0
Released a fix to Blazor.MediaCaptureStreams today in version 0.4.1. Microphones now offer finer-grained echo-cancellation capabilities, which the library does not yet support. To fix that, we ignore unsupported values until we soon add support for them.
#dotnet
#blazor
github.com/KristofferSt...
loading . . .
https://github.com/KristofferStrube/Blazor.MediaCaptureStreams/blob/main/CHANGELOG.md#041---2026-02-13
2 months ago
0
2
1
Iβm doing Advent of Code using the new File-based C# programs this year. But it doesnβt seem like VS Code nor VS has good intellisense when using them. What are people using when writing these?
#dotnet
#csharp
#AOC
5 months ago
0
1
0
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
6 months ago
0
3
0
I can recommend listening to the latest episode of Hanselminutes.
www.youtube.com/watch?v=YO7l...
I admire what
@captainsafia.com
has accomplished in such a short time. And especially her point that confidence can be built from competence resonates a lot with me.
loading . . .
Competence builds confidence with .NET Principal Engineer Safia Abdalla
YouTube video by Scott Hanselman
https://www.youtube.com/watch?v=YO7lEwR1l30
6 months ago
1
0
0
I've been using this as my daily driver for the last month, and it has been such a great experience! A lot of my projects open up 3-4 times faster with this version of Visual Studio. π
#dotnet
devblogs.microsoft.com/visualstudio...
loading . . .
Visual Studio 2026 Insiders is here! - Visual Studio Blog
Visual Studio 2026 Insiders is here β and it marks one of the most ambitious steps forward weβve taken with the IDE. This release brings AI woven directly into the developer workflow, performance impr...
https://devblogs.microsoft.com/visualstudio/visual-studio-2026-insiders-is-here/
8 months ago
0
2
0
I asked ChatGPT to come up with a name for the opposite of Primitive Obsession. My favourite answer: Class Constipation. For me, this is the peak of ChatGPT usage.
8 months ago
0
1
0
I attended a talk by Bjarne Stroustrup for the first time today. He told all about the usage of Concepts for generics in C++. He also had a small jab at C#: "If dynamic reflection is good enough for C#, then why not for C++?" ... "I think we can do better." I loved that comment!
8 months ago
1
0
0
Got renewed for my second year as Microsoft MVP. π This time also in the category Web Development.
#dotnet
#MVPBuzz
10 months ago
0
2
0
Released version 0.2.4 of ActivityStreams, my implementation of the Activity Streams and Activity Pub vocabulary for .NET. It fixed a bug reported by
@dfyx.social.helios42.de.ap.brid.gy
, fixed a misspelling, and added XML Documentation to all types exposed in the API.
github.com/KristofferSt...
loading . . .
GitHub - KristofferStrube/ActivityStreams: A .NET implementation of the Activity Streams vocabulary in the form of classes that can be serialized/deserialized using System.Text.Json
A .NET implementation of the Activity Streams vocabulary in the form of classes that can be serialized/deserialized using System.Text.Json - KristofferStrube/ActivityStreams
https://github.com/KristofferStrube/ActivityStreams
10 months ago
0
0
0
@james.montemagno.com
do you know if there is an easy way to map multiple different MCP endpoints in a single .NET project, each with their individual tools/methods registered? At work we are building MCPs for helping copilot use our SDKs, but would like to expose seperate tools for each SDK.
#mcp
10 months ago
0
2
1
reposted by
Kristoffer Strube
Damien Bowden
11 months ago
Blogged: Revisiting using a Content Security Policy (CSP) nonce in Blazor
damienbod.com/2025/05/26/r...
#blazor
#net9
#csp
#owasp
#security
#dotnet
#aspnetcore
#oidc
#identity
#openidconnect
#openiddict
loading . . .
Revisiting using a Content Security Policy (CSP) nonce in Blazor
This blog looks at implementing a strong Content Security Policy (CSP) in web applications implemented using Blazor and ASP.NET Core. When implementing CSP, I always recommend using a CSP nonce or β¦
https://damienbod.com/2025/05/26/revisiting-using-a-content-security-policy-csp-nonce-in-blazor/
1
11
6
Released a new version of Blazor.WebIDL yesterday, which fixes that Error Handling JSInterop did not detect typed exceptions correctly when used in Firefox. I also updated the Playwright tests to run across Chrome, Firefox, and WebKit.
#dotnet
#blazor
github.com/KristofferSt...
loading . . .
GitHub - KristofferStrube/Blazor.WebIDL: A Blazor wrapper for types and interfaces used in and defined in the standard WebIDL specification.
A Blazor wrapper for types and interfaces used in and defined in the standard WebIDL specification. - KristofferStrube/Blazor.WebIDL
https://github.com/KristofferStrube/Blazor.WebIDL
11 months ago
0
2
1
I get told that I don't share this enough, so I'm sharing again. π
#SelfPromotion
I do freelance consultancy. So if any of you have gigs or projects in the area of Blazor, ASP.NET Core, Data Mining, Visualizations, or some combination of these, then I'm currently available for new projects. π
12 months ago
0
3
3
Released version 3.3.0 of Blazor.FileSystemAccess today. π It now has support for getting write permission to all entries in a directory when requesting to open a directory. Thanks to Luke for creating the issue and PR for this.
#dotnet
#blazor
Demo:
kristofferstrube.github.io/Blazor.FileS...
loading . . .
GitHub - KristofferStrube/Blazor.FileSystemAccess: A Blazor wrapper for the File System Access browser API.
A Blazor wrapper for the File System Access browser API. - KristofferStrube/Blazor.FileSystemAccess
https://github.com/KristofferStrube/Blazor.FileSystemAccess
about 1 year ago
0
0
0
I found my name. π
#MVPBuzz
#MVPSummit
about 1 year ago
0
2
0
reposted by
Kristoffer Strube
Michael Washington
about 1 year ago
Look who I ran into!
@kstrubeg.bsky.social
#Blazor
#mvpbuzz
0
5
1
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
about 1 year ago
0
4
0
Do you enjoy a well-documented API? Then you might be happy to see that ASPβ€NET Core 10 Preview 1 uses XML Docs for the generated Open API Spec. π
@captainsafia.com
has made a repo where she shows all the cool bells and whistles of this feature:
github.com/captainsafia...
#dotnet
loading . . .
GitHub - captainsafia/aspnet-openapi-xml: Sample repo for XML comment support in ASP.NET Core
Sample repo for XML comment support in ASP.NET Core - captainsafia/aspnet-openapi-xml
https://github.com/captainsafia/aspnet-openapi-xml
about 1 year ago
1
1
0
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
about 1 year ago
0
2
1
reposted by
Kristoffer Strube
Jon Galloway
about 1 year ago
On this week's
#ASPNET
Community Standup: π.NET 10 Server & APIs Planning Discussion ποΈDan Roth, Safia Abdalla, Mike Kistler, Jon Galloway ποΈFebruary 4 / 10 AM PT / 18 UTC
www.youtube.com/watch?v=xs_V...
#dotnet
#aspnetcore
loading . . .
.NET 10 Server & APIs Planning Discussion
YouTube video by dotnet
https://www.youtube.com/watch?v=xs_V3VqkxHQ
0
4
3
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...
loading . . .
about 1 year ago
1
2
0
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...
loading . . .
about 1 year ago
1
4
1
reposted by
Kristoffer Strube
jsakamoto
about 1 year ago
[FYI] πBoost your Blazor app's UX! Blazor SplitContainer is the perfect solution for adding resizable, responsive panes to your Blazor apps. Itβs smooth, reliable, and easy to integrate. It offers full customization and support for vertical and horizontal layouts.
github.com/jsakamoto/To...
#Blazor
loading . . .
2
11
6
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
about 1 year ago
1
6
3
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...
loading . . .
over 1 year ago
0
4
0
Every time I have trouble with generics in Java I find Stack Overflow comments like this: "Java generics are fake, plain and simple." It eases the pain that it is not only me that has been burned by them. π
over 1 year ago
0
2
0
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...
loading . . .
over 1 year ago
0
19
5
Doing Advent of Code in Rust, this year. It's awesome to learn a language while solving these problems. π I would normally do it in C# but wanted to try something new. It has been really nice so far. Putting my solutions up on GitHub again this year:
github.com/KristofferSt...
#AOC
#aoc2024
#rust
loading . . .
GitHub - KristofferStrube/AoC2024: My solutions for however far I get in Advent of Code 2024 in Rust, this year.
My solutions for however far I get in Advent of Code 2024 in Rust, this year. - KristofferStrube/AoC2024
https://github.com/KristofferStrube/AoC2024
over 1 year ago
1
6
0
reposted by
Kristoffer Strube
.NET Foundation
over 1 year ago
We're officially on Bluesky!
15
271
49
Ready to watch .NET Conf at the local .NET Watch Party in Aarhus, Denmark with
#ANUG
#DotNetConf
#dotnet
over 1 year ago
0
2
0
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...
loading . . .
over 1 year ago
0
11
3
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...
over 1 year ago
1
4
1
Blogged: Multithreading in Blazor WASM using Web Workers
#dotnet
#blazor
kristoffer-strube.dk/post/multith...
almost 2 years ago
0
1
1
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...
almost 2 years ago
0
0
0
Blogged: Cancelling long-running JSInterop calls
#dotnet
#blazor
#jsinterop
kristoffer-strube.dk/post/cancell...
almost 2 years ago
0
1
0
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...
about 2 years ago
0
0
0
Released version 0.6.0 of Blazor.Popper to NuGet today. Now, with Blazor Server support, by popular demand. ππ
#dotnet
#blazor
#popper
#tooltip
Project:
github.com/KristofferSt...
Demos:
kristofferstrube.github.io/Blazor.Popper/
loading . . .
GitHub - KristofferStrube/Blazor.Popper: A Blazor wrapper for the Javascript library Popper.js
A Blazor wrapper for the Javascript library Popper.js - KristofferStrube/Blazor.Popper
https://github.com/KristofferStrube/Blazor.Popper
about 2 years ago
0
2
1
Blazor.Confetti is now on GitHub with sample projects and a guide to get it up and running in your project.
#blazor
#dotnet
#svg
#animation
Project:
github.com/KristofferSt...
Try it yourself:
kristofferstrube.github.io/Blazor.Confe...
about 2 years ago
0
4
1
Blogged: A holistic comparison of Blazor WASM performance from ASP.NET Core 5 to 8
#dotnet
#blazor
#aot
#wasm
#firstBlogPostOfTheYear
kristoffer-strube.dk/post/a-holis...
loading . . .
A holistic comparison of Blazor WASM performance from ASP.NET Core 5 to 8 - Kristoffer Strubeβs Bl...
In this article, we will attempt to compare the performance of a varied set of tasks in Blazor WASM with and without AOT from ASP.NET Core 5 up to 8.
https://kristoffer-strube.dk/post/a-holistic-comparison-of-blazor-wasm-performance-from-aspnet-core-5-to-8/
about 2 years ago
0
0
1
I have seen 3 cases of people beginning to use my libraries in Blazor Server/Web App projects over the last 2 weeks. Some of my early projects will get some love in the next couple of weeks to support Blazor Server as they were originally only intended for Blazor WASM.
#blazor
#dotnet
over 2 years ago
0
1
0
I am working on my Blazor graph editor this weekend, improving the stability and performance of the auto-layout mechanism and adding the ability to get a callback when nodes are selected. π΄ββ« Project:
github.com/KristofferSt...
Demo:
kristofferstrube.github.io/Blazor.Graph...
loading . . .
GitHub - KristofferStrube/Blazor.GraphEditor: A simple graph editor for Blazor.
A simple graph editor for Blazor. Contribute to KristofferStrube/Blazor.GraphEditor development by creating an account on GitHub.
https://github.com/KristofferStrube/Blazor.GraphEditor
over 2 years ago
0
2
1
Since someone asked for it, I now have a preview release of Blazor.WebAudio on NuGet.π I'm still only 47% done with the wrapper, but if you are interested in trying it out already, then you can find it here:
loading . . .
KristofferStrube.Blazor.WebAudio 0.1.0-alpha.1
Web Audio API wrapper implementation for Blazor.
https://www.nuget.org/packages/KristofferStrube.Blazor.WebAudio
over 2 years ago
0
0
1
Blogged: Reading notes from Performance Improvements in .NET 8
loading . . .
Reading notes from Performance Improvements in .NET 8 - Kristoffer Strubeβs Blog
In this post, I will share my reading notes from Stephen Toub's post on Performance Improvements in .NET 8 to give you a quick insight into what I found interesting. I especially found the improvement...
https://kristoffer-strube.dk/post/reading-notes-from-performance-improvements-in-dotnet-8/
over 2 years ago
0
1
0
reposted by
Kristoffer Strube
Michael Washington
over 2 years ago
@kstrubeg.bsky.social
just published
github.com/KristofferSt...
loading . . .
GitHub - KristofferStrube/Blazor.WebAuthentication: A Blazor wrapper for the Web Authentication brow...
A Blazor wrapper for the Web Authentication browser API. - GitHub - KristofferStrube/Blazor.WebAuthentication: A Blazor wrapper for the Web Authentication browser API.
https://github.com/KristofferStrube/Blazor.WebAuthentication
0
1
1
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...
over 2 years ago
0
3
1
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
over 2 years ago
0
1
0
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
over 2 years ago
0
3
1
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...
over 2 years ago
0
0
0
Load more
feeds!
log in