Blog

How to boost website performance with Static Site Generators

Maybe you can relate to the following scenario:

You are a web developer and want to set up a simple web page, perhaps a blog, a portfolio site or really anything else that is mostly static content. You look around to find a suitable way for setting it up. Being a web developer you could of course fire up a Next.js stack and build everything from scratch but since you don’t want to do anything fancy this soon seems like a lot of overkill.

By paranerd | Oct 17, 2024

ESPHome Smart Irrigation

When I installed an irrigation system in my yard quite some years ago it was clear to me that I wasn’t going with the “official” controller. It was expensive, didn’t come with WiFi out of the box (that would have cost a hefty premium), thus was difficult or even impossible to integrate and it just wasn’t flexible enough.

By paranerd | Jun 14, 2024

Docker Logging With Elasticsearch Logstash and Kibana 8.x

The ELK-Stack is one of the most popular logging platforms. It is flexible, well integrated and most of all: extremely powerful! But with great power comes… great complexity. It took me many hours (more than I’d like to admit) and a lot of very frustrating trial and error to get everything talk to each other the right way. This was larely due to me being completely new to the world of Elasticsearch but also due to the fact that there are countless broken and/or outdated tutorials out there. Especially the new (and very welcome!) default security features took some digging to work appropriately.

By paranerd | Jun 2, 2023

How to Set Up Your Own VPN Using WireGuard

Setting up your own private VPN got so much easier with the rise of WireGuard. Let me show you how it’s done!

I’m sure there are numerous reasons why you would set up a VPN yourself. In my particular case, I wanted to be able to connect to my home network remotely. This enables me to maintain and occasionaly fix things without the need to be physically present. Sure, for a lot of the services running on my network I could have simply just set up port forwarding to log into directly but a self-hosted VPN provides a whole lot more security and doesn’t affect usability all too much besides clicking one more button to connect (apart from the initial setup process, of course).

By paranerd | Aug 9, 2021

How to Use Let's Encrypt With Docker and Cloudflare

I wrote about Let’s Encrypt SSL certificates before on this blog but I recently discovered an even better way of doing things!

Apart from actually having a domain that you could issue a certificate for, all you need for this to work is a (free) Cloudflare account to manage your DNS records as well as have Docker installed on your server.

By paranerd | Aug 9, 2021

How to Use Tailwind CSS With Angular 10 (Update)

This is an update to my previous article on how to set up TailwindCSS with Angular 10. Apparently, packages since got updates, which change some of the steps required. Also I’ll show you a hassle-free one-line-solution that takes care of all the configuration. Amazing content coming up!

The easy way

First let me show you the lazy man’s solution. From within your project folder simply call:

By paranerd | Oct 25, 2020

How to Use Tailwind CSS With Angular 10

IMPORTANT UPDATE: Since the release of this article, some things changed, so the solution described below will very likely no longer work. But don’t worry, I got you covered with my follow-up article!

Some time ago I started using Tailwind CSS to style my web projects. But while Tailwind is a pleasure to use, it was a major pain to get it to work nicely with Angular.

By paranerd | Oct 1, 2020

Tailwind CSS – Just another Framework?

Using a CSS framework makes the life of a web developer a whole lot easier. There are a bunch of them out there, most of you probably know about Twitter’s Bootstrap, which I’ve been using for the past decade or so. But there’s a new kid on the block: Tailwind CSS.

By paranerd | Oct 1, 2020

Simple Collision Detection in JavaScript

I’ve been playing around developing some simple games (pun intended^^) from time to time, just for the fun of it. To do that I very often come across some kind of collision detection. I thought I’d show you an easy way of detecting collisions in JavaScript!

What is a collision?

Before we even start coding, we need to think about what it actually is that we want to detect. We need some conditions. For this example I’m assuming the two objects colliding are both rectangles. They have x- and y-coordinates as well as a width and a height. So far, so good. That was easy enough. Now the far more important part: how do we know if two rectangles collided?

By paranerd | Apr 5, 2019

How To Parse CSV With JavaScript

CSV files (short for Comma-Seperated Values) are a great way to exchange tabular data in a plain text file.

This is what it might look like:

name,age,location
john,36,chicago
pierre,31,paris
james,27,newcastle

The first row of this file is called the header, telling us what each column is about. The rest of the rows are just data.

By paranerd | Nov 29, 2018