Flowable OAuth2 Resource Server

Flowable provides a set of Spring Boot starters to help you embed the different engines (i.e., BPMN, DMN and CMMN) and expose their RESTful APIs. In this post, I'll walk you through the steps I followed to create a RESTful API that embeds Flowable's BPMN engine, exposes the BPMN | Continue reading


@robferguson.org | 4 years ago

Keycloak, Flowable and OpenLDAP

Not so long ago I wrote a series of posts about Flowable: Getting started with Flowable How To: Build Flowable How To: Flowable and LDAP Flowable's REST API - Part 1 Flowable's REST API - Part 2 Flowable's REST API - Part 3 And recently I wrote about Getting started | Continue reading


@robferguson.org | 4 years ago

Angular, OpenID Connect and Keycloak

In a previous post, I wrote about wanting to add support for Single Sign On to Serendipity and the steps I followed to launch and configure Keycloak. There are several certified OpenID Connect (OIDC) implementations that provide OIDC and OAuth 2.0 protocal support for browser-bas … | Continue reading


@robferguson.org | 4 years ago

Getting Started with Keycloak

I'd like to add support for Single Sign On to Serendipity, so I thought I'd take a look at Keycloak. Keycloak Keycloak is an open source Identity and Access Management solution that supports: Single Sign On (SSO) OpenID Connect (OIDC), OAuth 2.0 and SAML 2.0 LDAP and Active | Continue reading


@robferguson.org | 4 years ago

Angular Material: Table

In previous posts, I wrote about Getting started with Angular Material and Angular Material: toolbar and sidenav. In this post, I take a look at Angular Material's table component. Layout The Material Design website includes a great introduction to layout. Angular Material Starte … | Continue reading


@robferguson.org | 4 years ago

Dynamically Importing (Angular) Highcharts

In a previous post, I wrote about Lazy Loading Angular Libraries and how I used Webpack Bundle Analyzer to help visualise my project's bundle sizes and Chrome DevTools Network panel to inspect the properties of individual resources. My goal being to ensure that my App's main bund … | Continue reading


@robferguson.org | 4 years ago

Dashboards and Dashboard Widgets – Part 1

In a previous post, I wrote about Angular Material's toolbar and sidenav components. In this post, I'll walk you through the steps I followed in order to add support for Dashboards and Dashboard Widgets to Serendipty CRM. Getting Started After a little research (see below) I d … | Continue reading


@robferguson.org | 4 years ago

To: Flowable and LDAP

In a previous post I wrote about how to build Flowable ('build from source') and then create a Docker image. In this post, we'll configure Flowable to use OpenLDAP. Getting Started The easiest way to get started with OpenLDAP is to use a Docker image, for example: docker run --na … | Continue reading


@robferguson.org | 5 years ago

How To: Build Flowable

In a previous post I wrote about getting started with Flowable. In this post, we'll build Flowable ('build from source') and then create a Docker image. Prerequisites Homebrew Java 8 Install Git, Ant, Maven and Asciidoctor Install Git Its always a good idea to check for updates: … | Continue reading


@robferguson.org | 5 years ago

Flowable's REST API – Part 3

In a previous post, I wrote about using Angular, Angular Material and Flowable's REST API to create a bespoke Task List component: In this post, we'll use Angular, Angular Material and Flowable's REST API to create a bespoke Task component: Master/Detail Components At the moment, … | Continue reading


@robferguson.org | 5 years ago

Flowable's REST API – Part 2

In previous posts, I wrote about getting started with Flowable and working with Flowable's REST API. In this post, we'll use Angular, Angular Material and Flowable's REST API to create a bespoke Task List component: Flowable Library Lets start by using the Angular CLI to generate … | Continue reading


@robferguson.org | 5 years ago

Flowable's REST API – Part 1

I'm working on a proof-of-concept that needs to provide runtime support for the execution of business processes. Right now, I'm happy to use the Flowable Modeler to model business processes, however, I'd like to use Flowable's REST API to interact with process instances: Flowable … | Continue reading


@robferguson.org | 5 years ago

Getting started with Flowable

I'm working on a proof-of-concept that needs to provide runtime support for the execution of business processes. Luckily for me there are quite a few open source workflow engines to choose from. I thought I'd start by taking a look at Flowable. Getting Started The easiest way to … | Continue reading


@robferguson.org | 5 years ago

Angular Material: toolbar and sidenav

In a previous post, I wrote about getting started with Angular Material. In this post, I take a look at Angular Material's toolbar and sidenav components. Navigation The Material Design website includes a great introduction to navigation. Angular Material Starter Components Angul … | Continue reading


@robferguson.org | 5 years ago

Getting started with Angular Material

I'm working on a proof-of-concept whose primary focus is desktop devices. I haven't worked with Angular Material before so here goes... Getting Started Step 1: Install the Angular CLI To create the scaffolding for a new project I followed the steps in Angular's Getting Started gu … | Continue reading


@robferguson.org | 5 years ago

Angular and Angular Material – Part 1

I'm working on a proof-of-concept whose primary focus is desktop devices. I haven't worked with Angular Material before so here goes... Getting Started Step 1: Install the Angular CLI To create the scaffolding for a new project I followed the steps in Angular's Getting Started gu … | Continue reading


@robferguson.org | 5 years ago

Ionic 3 filtering, sorting and pipes

Every application starts out with what seems like a simple task: get some data, transform it, and then show it to your users. You can use a service to fetch data from your server and a pipe to transform it. However, ... Angular doesn't provide pipes for filtering or sorting lists … | Continue reading


@robferguson.org | 5 years ago

Ionic 3 Component Inheritance

TypeScript enables us to extend existing classes (in order to create new ones) and Angular includes support for component inheritance. In order to minimise code duplication we can move common code into a base class. For example: import { Injector, OnInit, OnDestroy, Type } from ' … | Continue reading


@robferguson.org | 5 years ago

PWA Tips and Tricks

In a previous post, I showed you how to optimise your CSS delivery. In this post, I'll walk you through the Progressive Web App-related tips and tricks I've learned over the past few months. Icons Android and iOS Each platform has different requirements and it's hard to keep trac … | Continue reading


@robferguson.org | 5 years ago