Ralph's Blog about this and that (RSS | Atom)

2017 | 2018 | 2019

A look at JSR 374 - Java API for JSON Processing (JSON-P)

Published: August 29, 2019  •  java

In this blog post, we are going to take a loot at the JSON-P (JSR 374) standard for processing JSON in Java.

Creating a password-less sign-in with WebAuthn, Spring and Ionic/Angular

Published: August 25, 2019  •  javascript, java, spring, ionic4

In this blog post, we are going to see how you can build a password-less authentication system with the FIDO2 WebAuthn standard. I show you a full-stack demo application with an Ionic 4 / Angular front end and a Spring Boot back end and integrate the authentication into Spring Security.

Sending Web Push Notifications with Java

Published: August 13, 2019  •  java, javascript

Sending Web Push notifications from a Java back end to a web browser

ky - elegant fetch

Published: August 10, 2019  •  javascript

A closer look at ky, a JavaScript HTTP client for the browser, built on top of the Fetch API. ky adds convenient functions and new features to the Fetch API.

Catch-all SMTP servers for development and testing

Published: August 09, 2019  •  java

How to use a catch-all SMTP server for development and testing email delivery. In this blog post we are going to look at 6 different catch-all SMTP servers and at a Junit 5 example with an embedded catch-all SMTP server.

Rate limiting Spring MVC endpoints with bucket4j

Published: August 07, 2019  •  java, spring

How to rate limit Spring MVC HTTP endpoints with bucket4j

Entity auditing with Hibernate Envers

Published: August 05, 2019  •  java

In this blog post we take a look at Hibernate Envers, a library that provides an easy auditing/versioning solution for entity classes

Git with JGit

Published: August 04, 2019  •  java

In this blog post we take a look at JGit, a pure Java implementation of Git

Web Workers - Basic usage, Angular 8 and Comlink

Published: July 31, 2019  •  javascript

In this blog post, we are looking at the Web Workers API. What problem it solves and how can we use it in our JavaScript applications. We take a look at the new Angular 8 build-time support for Web Workers, and lastly, we take a look at Comlink a JavaScript library that simplifies Web Workers programming.

OCR in a browser with Tesseract.js

Published: July 30, 2019  •  javascript

In this blog post, we are going to develop an Angular/Ionic application that runs Optical character recognition (OCR) in a browser with Tesseract.js. This application does not depend on any server-side code, and the recognition process runs locally in the browser.

A look at the Page Visibility API

Published: July 29, 2019  •  javascript

What is the Page Visibility API and how can you access it in web applications. Also a quick look at the visibilityjs library that simplifies commons tasks with the Page Visibility API.

Setting up WireGuard on Windows

Published: July 17, 2019  •  linux

Installing WireGuard, a simple, fast, and modern VPN, on Windows and connect to a WireGuard server.

Adding TOTP as 2nd factor to Spring Security form login

Published: June 21, 2019  •  java, spring, ionic4, javascript

How to add TOTP (Time-based One-Time Password) as the second factor to a traditional Spring Security form login authentication flow.

Variable length integers

Published: June 18, 2019  •  java

How to encode fixed 4 bytes Java integers into a variable length format that uses less space.

Password auto login with the Credential Management API

Published: June 13, 2019  •  java, javascript, spring, ionic4

How to create a frictionless password auto login experience with the Credential Management API.

Exposing build information of Spring Boot and Angular applications

Published: June 12, 2019  •  java, spring, javascript

How to expose build information, like version number, build timestamp, git commit information, of Spring Boot and Angular applications

Uploading pictures from Capacitor app to Spring Boot

Published: June 11, 2019  •  java, spring, javascript, ionic4, capacitor

How to take pictures with the Capacitor camera plugin and upload them to a Spring Boot application with Angular's HttpClient and tus.io.

Reliable file uploads over HTTP with tus.io

Published: June 11, 2019  •  java, javascript, spring, ionic4

How to integrate tus.io implementations into JavaScript and Java applications to create reliable and resumable file uploads over HTTP.

Google Fonts in an Angular / Ionic application

Published: June 10, 2019  •  javascript, ionic4

A tutorial on how to use Google Fonts in an Angular / Ionic app. The blog post present two approaches. One approach is by linking to the Google Font server and the second approach shows you how to download Google Fonts and serve them from your web server.

Stateless Authentication with Spring Security

Published: May 15, 2019  •  java, spring, ionic4

In this blog post we are going to implement a stateless authentication system with Spring Security, Spring Boot and an Angular/Ionic 4 client

Integrate FontAwesome icons in an Angular application

Published: February 15, 2019  •  Updated: August 21, 2019  •  javascript, ionic4

This blog post shows you how to integrate FontAwesome icons into an Angular application with the official Angular JavaScript library

Self-host Seafile

Published: February 04, 2019  •  linux

How to self-host Seafile, an open source file sync and share software, on a VPS with Docker

Directory watching with Java

Published: February 01, 2019  •  java

In this blog post we take a look at the capability of Java to monitor directories for changes. A feature that has been introduced a long time ago (2011) in Java 7

Getting started with jOOQ, Flyway and Spring Boot

Published: January 31, 2019  •  java, spring

In this blog post we are going to set up a Spring Boot application with jOOQ and Flyway

Real-time messaging with Cettia and Spring Boot

Published: January 28, 2019  •  java, javascript, spring

Getting started with Cettia, a real-time web framework, and Spring Boot

A closer look at the Java 11 HTTP Client

Published: January 23, 2019  •  java

In this blog post, we are going to take a closer look at the new HTTP Client that has been introduced in Java 11.

JavaScript spread and rest syntax examples

Published: January 19, 2019  •  javascript

A collection of examples with the spread and rest syntax in JavaScript

Installing Docker on Windows 10 Home from scratch

Published: January 14, 2019  •  linux

In this brief tutorial I show you how to install a Docker environment from scratch on Windows 10 Home.

Expose server behind NAT with Tor

Published: January 10, 2019  •  linux

In this blog post I'm going to show you how to make services, installed on a server behind a NAT/Firewall, accessible from everywhere with the Tor network

Expose server behind NAT with WireGuard and a VPS

Published: January 10, 2019  •  linux

In this blog post I'm going to show you how to set up a WireGuard VPN between a computer, located behind a NAT/Firewall, and a VPS in the cloud to expose services running on the private server to the Internet and make them accessible from everywhere

Spring Boot with TLS and HTTP/2 on localhost

Published: January 09, 2019  •  java

In this blog post we are going to set up a private root CA with mkcert on our local development machine, create a TLS certificate and enable Spring Boot to use TLS and HTTP/2. We learn how to configure Charles, a HTTP proxy, to trust this private root CA and we also take a brief look at HTTP/2 push.

Setup a NanoPi Kiosk with Chromium

Published: January 05, 2019  •  linux

In this blog post I'm going to show you how to set up a kiosk mode with a full screen Chromium on a NanoPi

Netgear Aircard as Internet gateway with pfSense

Published: January 05, 2019  •  pfsense

How to connect a Netgear Aircard to a pfSense router and use it as Internet gateway

JavaScript BigInt and JSON

Published: January 04, 2019  •  javascript, java

How to JSON deserialize and serialize the new JavaScript primitive number type BigInt in a full stack application with Spring Boot

Machine Learning with brain.js and Tensorflow.js

Published: January 04, 2019  •  javascript

In this blog post we are going to create two neural networks with brain.js and Tensorflow.js, train the MNIST dataset and use the trained model in a web application to detect digits

Using pre-trained Tensorflow.js models

Published: January 04, 2019  •  javascript

In this blog post we are going to look at tfjs-models (https://github.com/tensorflow/tfjs-models), a collection of pre-trained models with Tensorflow.js that you can simply add and use from your web application