Monitoring is an essential part of maintaining the health and performance of your applications. I already have this site monitoring user visits using Umami and exceptions and errors using Seq but now I wanted to add performance monitoring to the mix. In this…
This is just a quick article as it builds on the others in the full text search series such as the typeahead dropdown and Postgres full text search. In this post, I will show you how to implement a simple search page using HTMX and EF Core in an ASP.NET Core…
In a previous post I showed you how to create a search dropdown using Alpine.js and HTMX then I showed how we could enable Cross-Site Request Forgery protection using the AntiforgeryRequestToken in ASP.NET Core with JavaScript using HTMX to implement a Donut…
In this site I use HTMX extensively, this is a super easy way to make your site feel more responsive and smoother without having to write a lot of JavaScript. NOTE: I'm not entirely happy with this yet, HTMX has some elements which make this tricky HTMX and…
Polly is a critical part of any .NET developer's toolkit. It is a library that allows you to define policies for handling exceptions and retries in your application. In this article, we will explore how to I use Polly to handle retries in this application.…
I've blogged many times about how I use Markdown to create my blog posts; I really like this approach but it has one major drawback - it means I have to do a complete Docker build cycle to update a post. This was FINE while I was creating more features which I…
Donut hole caching can be a useful technique where you want to cache certain elements of a page but not all. However it can be tricky to implement. In this post I will show you how to implement a simple donut hole caching technique using HTMX. The Problem One…
So I've posted a LOT in the past on using Umami for analytics in a self-hosted environment and even published the Umami.Net Nuget pacakge. However I was having an issue where I wanted to track users of my RSS feed; this post goes into why and how I solved it.…
One of my projects since starting this blog is an almost obsessive wish to track how many users look at my website. To do this I use Umami and have a BUNCH of posts around using and setting up Umami. I also have a Nuget package which makes it possible to track…
In the previous part of this series where I tested Umami.Net tracking methods The Problem In the previous part I used Moq to give me a Mock<HttpMessageHandler> and return the handler used in UmamiClient, this is a common pattern when testing code that uses…