One of my constant obsessions is sample data. It's an often annoying aspect of developing systems that you have the catch 22 of needing data to appropritately test fucntionality while developing the system which would let you create said data. Combined with my…
One of the key things I wanted with LLMApi was the ability for it to be as lightweight as possible (so JUST simulate the api type you want) AND be super easy to get intp; so you should be able to get EVERYTHING just as easily. With this in mind I designed it…
NOTE: This is the live release notes from gitHub. Intorduction Just the release notes from this nuget package. This is 'live' from GitHub so will update frequently. <nav class="ml_toc" aria-label="Table of Contents"> <ul> <li><a…
So, as my current contract is soon ending and I need to keep working due to that pesky 'eating stuff' habit I have I'm doing one of my periodic skills updates. This here blog was in fact the last time I did this. I learn more quickly and deeply by doing than…
If you've ever left a meeting wondering "what was the point of that?" or found yourself having the same discussion for the third time, you're not alone. Most meetings fail - and it's not because people are lazy or disorganized. Meetings fail because they lack…
HTMX is a powerful JavaScript library that allows you to create dynamic web applications with minimal JavaScript. It enables you to make AJAX requests, swap HTML content, and handle events directly in your HTML attributes. I've been using HTMX for about two…
Just a quick one, I had a need in a work project for the ability to 'clear' URL parameters from a URL. This is useful when you have a URL with multiple parameters, and you want to remove one or more of them (for example for a search filter). The Problem My…
So in what's becoming a series, in a work project I wanted to add the ability for a partial to auto-update on a given timescale. Here's how I did it using Alpine.js and HTMX. Requirements So I wanted this to be reusable; so it should be simple and…
On a work project I've been using and abusing HTMX to build an admin UI. As part of this I'm using the lovely SweetAlert2 Javascript library for my confirmation dialogs. It works great but I also wanted to use them to replace my HTMX loading indicators. This…
HTMX is a great library for making your web applications more dynamic and responsive. In this post, I'll show you how to use HTMX to show a toast notification and swap content on the page. One of the 'limitations' in standard HTMX (i.e., not OOB swaps) is that…
As part of my ongoing sage with my paging tag helper I have now separated out PageSize into its own tag helper. This is to make the tag helper more flexible and to allow for more complex paging scenarios. Again; these are all works-in progress. I'm already up…
Well I've been playing with a nuget package for doing paging stuff in ASP.NET and well I never thought there'd be 1.7k downloads. I thoght not making a 1.0 version would make it clear that it was a bit of a toy but I guess not. SO FAR So far in 10 days I've…
So while building out a project I originally built the paging tag helper for I also cam across ANOTHER need. A way to easily build sorting functionality for a table of results with HtMX support. So...I present to you the Flippy Table Header tag helper thingy.…
A work project the other day necessitated implementing paging form results. My go-to paging tag helper has always been the pagination Tag Helper by Darrel O'Neill as I wrote about here however for whatever reason it's just stopped working for me. So instead of…
In Part 3, we built a beautiful visual editor. But our workflows only run when we manually trigger them. In this final post, we'll make workflows truly autonomous using Hangfire for: Scheduled execution - Run workflows on a schedule API polling - Monitor…
In Part 2, we built a powerful workflow engine. But workflows defined in JSON aren't very user-friendly. In this post, we'll create a stunning visual workflow editor - think "dummy's Node-RED" - using HTMX, Alpine.js, TailwindCSS, and DaisyUI. By the end of…
In Part 1, we introduced the concept of building a custom workflow system. Now it's time to get our hands dirty! In this post, we'll build the core workflow engine - the heart of our system that executes node-based workflows. By the end of this post, you'll…
Workflow systems are everywhere in modern applications - from simple approval processes to complex multi-step automations. While there are excellent commercial solutions like Temporal, Airflow, and n8n, sometimes you need something tailored to your specific…
In my previous post I spoke about the difficulties of being a contractor and how sometimes you can be left high and dry when a customer doesn't pay. This can happen for a few reasons; They CANNOT pay - this is common in startups when they run out of money,…
As a freelance developer one of the skill-sets you need to learn quickly is how to work on existing codebases effectively. I've been lucky to have built a bunch of from--scratch systems; this is a JOY as an experienced developer however it's not always the…