Blazorpack

Enter — an experimental, community-driven tool that flips the script. What is BlazorPack? BlazorPack is a packer/compressor and bundler for Blazor WebAssembly apps, but with a desktop twist. Its primary goal: package your entire Blazor WebAssembly app into a single, self-extracting, native executable — no separate server, no console windows, and no “right-click > inspect element” unless you want it.

If you’ve built a Blazor Hybrid app (Blazor Hybrid), you know the magic: write C# and Razor once, run on web, desktop, and mobile. But there’s always that moment in deployment where things get awkward.

dotnet add package BlazorPack dotnet build -c Release blazorpack --input bin/Release/net8.0/wwwroot --output MyApp.exe That’s it. Your MyApp.exe is ready to ship. Interesting question. .NET already has dotnet publish --single-file for console apps, but not for Blazor WebAssembly. Microsoft’s official answer for desktop Blazor is Blazor Hybrid (MAUI/WPF), which does not produce a single EXE. blazorpack

They wanted . No dependencies. Just click and run.

You ship a Blazor WebView inside a .NET MAUI or WPF shell. The user installs your app. Behind the scenes, your Blazor UI is still being served from embedded files. It works… but doesn’t it feel like your desktop app is pretending to be a website? Enter — an experimental, community-driven tool that flips

Given the rise of and Native AOT , I wouldn’t be surprised if .NET 10 or 11 includes something like dotnet publish --blazor-embedded .

And sometimes, magic is exactly what shipping needs. Have you used BlazorPack or something similar? Let me know in the comments — I’d love to hear your “single EXE” war stories. Its primary goal: package your entire Blazor WebAssembly

Until then, BlazorPack fills a real niche. Yes, if you’ve ever thought: “I love Blazor, but why can’t my desktop app be just one file like a Win32 app from 1999?”