Torsten Müller

Recent Articles

Communication between Browser tabs: Synchronizing State

Web applications requiring authentication can run in multiple browser tabs at the same time, thus requiring — for good UX — to synchronize global application state such as auth status, name changes, data updates etc.

Web Components: A Closer Look

This is a continuation of my previous post about Web Components. Here, I will introduce life cycle hooks, adding tag properties and look at CSS encapsulation in more detail.

Web Components: The Basics

This post introduces web components: How to set one up, deal with HTML, CSS and the use of slots in the web component specification

Angular Decorators to Create Mixable, Self-contained Functionality

In this post, I'm going to build on a previous post introducing TypeScript Decorators by building a mixable implementation to have two form communicate with each other and an embedding component.

TypeScript Decorator: Types, Principles and Use Cases

TypeScript Decorators seem to be the hidden, ugly step children of the family. Here, I'll describe what they are, what they are used for and how they can be implemented.

Rx.Js paradigm: resolving nested observables and side effects

Working with other people is great: You get to learn how other people think about problems and their solutions, learn new approaches and sometimes get to provide some insight into the way you think about certain things.

Angular dependency injection: Use case for downloading assets

Angular is a great framework, but you sometimes just need to do things outside the framework. In this case, it was to download a file from the server to directly save it on the user’s hard drive. For this functionality

Creating an npm library from existing code

In this post I'm going to look into how we can create a npm library from an existing Angular project to reuse and share functionality.

Using Angular interceptors to ensure authenticated user state

This post introduces the concept of Angular Interceptors and shows an example of their use for managing authentication in an Angular app.

Create custom Rx.js operator: Aggregating events for a length of time

In this post, I'm developing a custom Rx.js operator that aggregates events in the chain with a timeout the developer can specify

Navigation in an Angular application using keyboard shortcuts

This is the first of two posts about how to implement navigation via keyboard shortcuts in an Angular application, using services, Rx.js and event propagation

Converting GET request data into a JSON object

Nested form data sent via a GET request gets passed as field names, where nested object names are contained in square brackets. This post shows how to convert that structure to a JS Object.

Implementing an immutable List in JavaScript

JavaScript offers objects and arrays. Here, I'm implementing a List type, which uses paradigms from functional programming such as recursion and immutability.

Implementing the Option Monad in JavaScript

This post describes the use of monads in functional programming and provides a sample implementation of basic functionality in JavaScript

Using Angular @ViewChild to implement multiple visualizations of data sets

Some data sets can be presented in different formats. This post explains, how to create an Angular structure that lets a user choose which representation of a data set to display, using the example of a music library application.

Polymorphic Angular Forms: How to create forms with different detail data

Some web forms require the use of different detail sub-forms to collect the data. In this post, I'll be looking at a form for library items which has different detail data for three library items: books, CDs and DVDs.

Constructing a rudimentary money transfer architecture

This post takes a look at the obvious things a money transfer implementation would need to account for - it's more of a brain teaser "what if", if solutions wouldn't be readily available.

A TypeScript pagination component with immutable state

This post presents a way to implement immutable data objects in TypeScript/JavaScript. It relies on standard JavaScript methods to achieve its goal.

Angular: Dynamic class instantiation to use different data loading strategies

In this post, I'm developing a data loading mechanism for Angular which can be configured to decide how to select, paginate and filter data from an in-memory cache or to load the data from the server for each page/filter change.

Creating a reusable table component in Angular

Here I'm introducing a reusable table component which can be reused to render a variety of data in a consistent manner without duplicating code. It interacts with the host component via a few property and event bindings

Angular ng-template to inject content into other components

View components sometimes need to have similar appearance but slightly different content and functionality. In this post, we're exploring how to use the same component but change out the link destinations of a list of links.

Angular custom form field for Reactive Forms

We sometimes need specific form fields for special purposes. In this post, I describe how to develop a time duration field for use with Angular Responsive Forms