Publishing a .NET MAUI app to the App Store from a Windows machine
How I got SplitEasy onto Apple's store from my Windows: the Visual Studio setup, the Mac pairing, and the three…
.NET (dotnet) is a developer platform made up of tools, programming languages, and libraries for building many different types of applications.
So, there are various implementations of .NET (dotnet). Each implementation allows .NET code to execute in different places—Linux, macOS, Windows, iOS, Android, and many more. This framework has two main versions:
Then, Xamarin/Mono is a .NET (dotnet) implementation for running apps on all the major mobile operating systems, including iOS and Android.
The .NET Standard is a formal specification of the APIs that are common across .NET implementations. This allows the same code and libraries to run on different implementations.
Therefore, the two major components of .NET (dotnet) Framework are the Common Language Runtime and the .NET Framework Class Library.
Summarize, .NET (dotnet) applications are written in the C#, F#, or Visual Basic programming language. Code is compiled into a language-agnostic Common Intermediate Language (CIL). Compiled code is stored in assemblies—files with a .dll or .exe file extension.
At the end, when an app runs, the CLR takes the assembly and uses a just-in-time compiler (JIT) to turn it into machine code that can execute on the specific architecture of the computer it is running on.
How I got SplitEasy onto Apple's store from my Windows: the Visual Studio setup, the Mac pairing, and the three…
This article wires up two big cloud providers, Microsoft Foundry and Amazon Bedrock and builds the factory that routes between…
Modern phones and Macs ship their own neural hardware and their own on-device models. Here how to use them from…
Persist embeddings in a vector store, search them, and use what you find to ground a chat model's answers, the…
Text is not the only thing models generate. Microsoft.Extensions.AI abstracts image generation behind IImageGenerator. With troubleshooting.
How IEmbeddingGenerator works in NET10: turn a PDF into chunks, chunks into vectors, and a question into ranked results, with…
How can we test a component based on Microsoft.Extension.AI that gives a different answer every time it runs? Here an…
A language model knows what was in its training data and nothing else. Tool calling closes that gap with custom…
Second post where using Microsoft.Extensions.AI I build the first AI client keeping the history of the chats and instruct the…
Microsoft.Extensions.AI is a small set of abstractions in the box, and providers that plug in behind the common AI providers…
Package PSC.Analyzers.Blazor as a NuGet analyzer, publish it to a feed, and consume it across a solution including how to…
Test the PSC001 rule with Microsoft.CodeAnalysis.Testing: reference assemblies, inline diagnostic markup, and positive and negative cases.
Write the PSC001 rule: a DiagnosticAnalyzer that finds Blazor [Parameter] properties and flags the ones that aren't PascalCase.
Start a custom Roslyn analyzer for Blazor. We scaffold PSC.Analyzers.Blazor, explain every csproj setting, and set up analyzer release tracking.
Visual Studio 2026 dropped the built-in 'extract @code to a code-behind' feature. So I wrote a right-click extension that brings…
Learn how enabling Gzip compression in your .NET backend can dramatically improve performance for users on slow or unstable networks,…
Introducing the PSC Survey Suite for Blazor: a runtime component, a drag-and-drop visual designer, and bulk importers that all speak…
In this post, I show how replacing Swagger with Scalar in ASP.NET Core and NET10. Scalar is a UI that…
A deep dive into the latest OpenAPI and Swagger improvements in ASP.NET Core 10, including Minimal APIs, versioning, Native AOT…
I’ll show you how to use a simple VBA macro. This macro will help you clean up your Outlook contact…
Solving the .NET MAUI RefreshView Limitation on macOS: building a MAUI CustomRefreshView from scratch for all platforms
We will walk through the design and implementation of a flexible, reusable Matching Pairs component for .NET9 MAUI
I will create a new MAUI reusable component for list of strings using FlexLayout with add and remove functionalities.
The NuGet package WebApiDocumentator is an alternative to Swagger and the design is simple and more useful for developers and…
The connection with RabbitMQ isn't always stable. The reconnection not always is working. I want to create a resilient connection…