Find your next readFilters
Reset

Page 7 of 20 (Total items: 198)
Adding Umami Tracking Client Follow Up

In an earlier post I sketched out how a Tracking Client for Umami in C# could work. Well I've finally had a chance to test it extensively and improve it's operation (yes ANOTHER IHostedService). Quirks of the Umami API The Umami Tracking API is both very…

Background Translations Pt. 3

In previous articles, we have discussed the importance of translation in the context of web applications. We have also explored the use of the EasyNMT library to perform translations in an ASP.NET Core application. In this post I'll cover how I added a…

Full Text Searching (Pt 3 - OpenSearch with ASP.NET Core)

In the previous parts of this series we introduced the concept of full text searching and how it can be used to search for text within a database. In this part we will introduce how to use OpenSearch with ASP.NET Core. Previous parts: Full Text Searching with…

Background Translations Pt. 2

In our previous post here we discussed how we can use EasyNMT to translate our .md files into different languages. We also discussed how we can surface this functionality to the user by adding a dropdown to the markdown editor. In this post we'll discuss how…

Background Translations Pt. 1

So for a while now I've used EasyNMT to translate my .md files into different languages here. I've wanted to 'surface' this so you can all have a play with it too. See the second part of this series here. The eagle eyed amongst you will have noticed that I've…

Ensuring your IHostedService (or IHostedLifecycleService) is a single instance

This is a dumb little article because I was a bit confused about how to ensure that my IHostedService was a single instance. I thought it was a bit more complicated than it actually was. So I thought I'd write a little article about it. Just in case anyone…

Adding XSRF for JavaScript

When adding the search box in the prior article, we left out a critical security feature: XSRF protection. This article will cover how to add XSRF protection to the search box. What is XSRF? XSRF stands for Cross-Site Request Forgery. It is a type of attack…

Adding Entity Framework for Blog Posts (Pt 6)

Now that I have this blog running using Entity Framework I can add new posts and languages easily. I just add a new markdown file to the project and check it in. The GitHub action triggers and the site is updated. In this post I'll cover a couple of small…

Adding a C# Umami Tracking client

In a previous post we added a client for fetching Umami analytics data. In this post we will add a client for sending tracking data to Umami from a C# application. Umami is a lightweight analytics service that can be self-hosted. It is a great alternative to…

A SimpleMDE Markdown Preview Editor with server side rendering.

One thing I thought it would be fun to add is a way to look at the markdown for the articles on the site with a live rendering of the markdown. This is a simple markdown editor that uses SimpleMDE and a server side rendering of the markdown using the markkdig…

Page 7 of 20 (Total items: 198)
logo

© 2026 Scott Galloway — Unlicense — All content and source code on this site is free to use, copy, modify, and sell.