Getting Started with the Web Monetization API

The Web Monetization API is a JavaScript browser API that allows the creation of a payment stream from the user agent to the website. This post walks through getting started adding it to a site. | Continue reading


@blog.johnnyreilly.com | 1 year ago

Azure Container Apps: the little told story of dapr pubsub

This post shows how to build and deploy two Azure Container Apps using Bicep and GitHub Actions. These apps will communicate using dapr's publish & subscribe (pubsub) building block. | Continue reading


@blog.johnnyreilly.com | 1 year ago

ESLint for C#

ESLint provides a great linting experience for TypeScript and JavaScript in VS Code. The suggestions, fixes and ignore options make creating clean code a joy. A similar experience is available for C# in VS Code through Roslyn Analyzers - this post tells us more. | Continue reading


@blog.johnnyreilly.com | 2 years ago

Azure Static Web App Deploy Previews with Azure DevOps

I love Netlify deploy previews. This post implements a pull request deployment preview mechanism for Azure Static Web Apps in the context of Azure DevOps which is very much inspired by the Netflix offering. | Continue reading


@blog.johnnyreilly.com | 2 years ago

Webpack? esbuild? Why not both?

Builds can be made faster using tools like esbuild. However, if you're invested in webpack but would still like to take advantage of speedier builds, there is a way. This post takes us through using esbuild alongside webpack using esbuild-loader. | Continue reading


@blog.johnnyreilly.com | 2 years ago

Output connection strings and keys from Azure Bicep

If you're provisioning resources in Azure with Bicep, you may have a need to acquire the connection strings and keys of your newly deployed infrastructure. For example, the connection strings of an event hub or the access keys of a storage account. Perhaps you'd like to use them … | Continue reading


@blog.johnnyreilly.com | 2 years ago

C# 9 in-process Azure Functions

C# 9 has some amazing features. Azure Functions are have two modes: isolated and in-process. Whilst isolated supports .NET 5 (and hence C# 9), in-process supports .NET Core 3.1 (C# 8). This post shows how we can use C# 9 with in-process Azure Functions running on .NET Core 3.1. | Continue reading


@blog.johnnyreilly.com | 2 years ago

Azure Functions and .NET 5: All the Small Things

The upgrade of Azure Functions from .NET Core 3.1 to .NET 5 is significant. This post shows part of the upgrade: Query params, Dependency Injection, Bicep & Build | Continue reading


@blog.johnnyreilly.com | 2 years ago

How to send Teams notifications using Markdown and a webhook

Teams notifications are mighty useful. You can send them using Markdown via a webhook. | Continue reading


@blog.johnnyreilly.com | 2 years ago

Azure Ad should 403

By default Microsoft.Identity.Web responds to unauthorized requests with a 302 (redirect). Do you want a 403 (forbidden) instead? Here's how. | Continue reading


@blog.johnnyreilly.com | 2 years ago

Azurite and Table Storage in a dev container

It's great to be able to develop locally without needing a "real" database to connect to. Azurite is an Azure Storage emulator which exists to support just that. This post demonstrates how to run Azurite v3 in a dev container, such that you can access the Table Storage API, which … | Continue reading


@blog.johnnyreilly.com | 2 years ago

The Service Now API and TypeScript Conditional Types

The Service Now REST API is an API which allows you to interact with Service Now. It produces different shaped results based upon the sysparmdisplayvalue query parameter. This post looks at how we can model these API results with TypeScripts conditional types. The aim being to mi … | Continue reading


@blog.johnnyreilly.com | 3 years ago

Ts-loader goes webpack 5 (TypeScript)

ts-loader has just released v9.0.0. This post goes through what this release is all about, and what it took to ship this version. For intrigue, it includes a brief scamper into my mental health along the way. Some upgrades go smoothly - this one had some hiccups. But we'll get in … | Continue reading


@blog.johnnyreilly.com | 3 years ago

Azure App Service, Health checks and zero downtime deployments

I've been working recently on zero downtime deployments using Azure App Service. They're facilitated by a combination of Health checks and ... | Continue reading


@blog.johnnyreilly.com | 3 years ago

Definitely Typed: The Movie

I'd like to tell you a story. It's the tale of the ecosystem that grew up around a language: TypeScript. TypeScript is, for want of a better... | Continue reading


@blog.johnnyreilly.com | 4 years ago

Start Me Up: ts-loader meet .tsbuildinfo

With TypeScript 3.4, a new behaviour landed and a magical new file type appeared; .tsbuildinfo TypeScript 3.4 introduces a new flag calle... | Continue reading


@blog.johnnyreilly.com | 4 years ago

How to make your UI more responsive with a little template love

I'm somewhat into code golf. Placing restrictions on what you're "allowed" to do in code and seeing what the happens as a result. I'd like t... | Continue reading


@blog.johnnyreilly.com | 5 years ago

How we ran a coding bootcamp

I recently had the good fortune to help run a coding bootcamp. The idea was simple: there are many people around us who are interested in pr... | Continue reading


@blog.johnnyreilly.com | 5 years ago

Reducing Relative Paths in TypeScript and Webpack

I write a lot of TypeScript. Because I like modularity, I split up my codebases into discreet modules and import from them as necessary. ... | Continue reading


@blog.johnnyreilly.com | 5 years ago

Docker and Configuration on Azure Web App for Containers: Whither Colons?

App Services have long been a super simple way to spin up a web app in Azure. The barrier to entry is low, maintenance is easy. It just wo... | Continue reading


@blog.johnnyreilly.com | 5 years ago

Write Cypress tests for an Auth0 app

Cypress is a fantastic way to write UI tests for your web apps. Just world class. Wait, no. Galaxy class. I'm going to go one further: univ... | Continue reading


@blog.johnnyreilly.com | 5 years ago

VSTS and EF Core Migrations

Let me start by telling you a dirty secret. I have an ASP.Net Core project that I build with VSTS. It is deployed to Azure through a CI / C... | Continue reading


@blog.johnnyreilly.com | 5 years ago