RSSAmplifier

Blog

Max Dietrich - Technical Product Owner GIS

Technical Product Owner GIS at Bayernwerk (E.ON). I ride my mountain bike in the alps, code and design my website and publish new content whenever I can.

mxd.codesRSS feed ↗76 posts

Latest posts

An E-Ink Homelab Dashboard on a Jailbroken Kindle

How I turned an old Kindle into an e-ink dashboard for my homelab, why the device renders nothing itself, and why I deleted half of what I first put on the screen.

Self-hosted Analytics with Next.js and PostgreSQL

How I built a fully anonymous, privacy-first analytics system for mxd.codes using Next.js API routes and PostgreSQL without any third-party tracking service.

Colota v1.1.0: Native Maps, Tracking Profiles, and Pause Zones

After releasing Colota 1.0 as an open-source Android GPS tracker, I spent the last months rebuilding the map engine, adding automatic tracking profiles, geofence-based pause zones, and a bunch of smaller improvements.

Gran Canaria 2026

Croatia and Italy 2026

Effortless Wildcard SSL: Secure Your Domain with Let's Encrypt, Nginx, Docker and Cloudflare DNS

Learn how to generate and automate Let's Encrypt wildcard SSL certificates for Nginx using Docker and Cloudflare DNS API. Secure all your subdomains with easy setup, automatic renewal, and zero-downtime Nginx reloads.

How to Integrate Plausible Analytics in a Next.js App (Without Getting Blocked)

Learn how to integrate Plausible Analytics into a Next.js App Router project with route tracking and ad blocker-resistant proxying. A complete guide for privacy-focused, cookie-free analytics.

How to Create a Backup Script for PostgreSQL and MariaDB Containers on a Server

Learn how to automate backups for PostgreSQL and MariaDB running in Docker containers on a server. Protect your data with this simple, customizable backup script, ensuring regular backups with minimal effort.

Farewell to winter and the cold!

Enhancing Social Interactions: Implementing Webmentions with Next.js and PostgreSQL

Learn how to integrate Webmentions into your Next.js site using PostgreSQL. Enhance engagement, foster social interactions, and build a dynamic web community with this step-by-step guide.

docker-staticmaps: A selfhosted Static Maps API

A containerized web version for staticmaps with express.

Bretagne 24

Asturias

Using Google Adsense with GatsbyJS

In general there are two possibilies to use Google Adsense on your GatsbyJS website Auto Ads and custom display blocks.Depending on whether you choose to include Adsense ads on certain spots or whether you will leave this job to the Google AI, you can choose one/and or the other.

Mastering React and OpenLayers Integration: A Comprehensive Guide

Unlock the full potential of interactive maps in your React applications by delving into the seamless integration of OpenLayers.

Geography and GIS Blogs

Here you will find a list of interesting and informative geographic and gis blogs.

Dockerizing a Next.js Application with GitHub Actions

In this article, we'll explore how to Dockerize a Next.js application and automate its deployment using GitHub Actions, thereby simplifying the deployment workflow and enhancing development productivity.

Setting Up MapProxy with Docker and Serving Cached Tiles via Nginx

MapProxy is a powerful open-source proxy for geospatial data that allows for efficient caching and serving of map tiles. Combining MapProxy with Docker and Nginx can provide a scalable and easily manageable solution for serving cached map tiles.

Gran Canaria Workation

🏖️💻

Optimizing images for Next.js sites with imgproxy and docker

How to transform and optimize images with imgproxy hosted with docker for your Next.js application.

USA Roadtrip

Building a Table of Contents (TOC) from markdown for your React blog

How to create a Table of Contents (TOC) from markdown for your React blog with Javascript without any third party dependencies.

Cyprus Coffee Ride

How to copy your Proxmox backups with AzCopy to Azure Storage Containers

This article will explain to you how you can create an Azure Storage Account, prepare AzCopy locally and how to create a bash script which will be used to copy your local Proxmox Backups via AzCopy to an Azure Storage Account by a cost effective way.

Doing More with Docker

This guide is designed for people who want to learn docker infrastructure. Not just how to use docker, but how to stand up docker services in a robust and secure manner. This guide is about standing up a single node docker environment with backups, IP whitelisting, non-root containers (where supported), single sign-on and reverse proxying. Link:…

Trans Dolomiti MTB Tour

Understanding Leaflet and React: A Guide to Web GIS Applications

In this article I will explain how you can create a basic web map with Leaflet and React by using functional components without any third party packages. So i will strongly recommend to have a look at the Leaflet API reference.

Implementing a Custom Cookie Banner in Next.js

Recently I implemented a custom cookie banner solution on my Next.js site which you probably have seen a few seconds before. There are a lot of prebuilt cookie banners you can use for React or Next js sites but i wanted to create a custom cookie banner which also has some personal touch and keeps the design with the website in line.

How to build a related posts component for your Next.js blog

Some blogs have these related articles or posts sections where visitors can have a preview at more content after they just read a post. That's what I wanted to create for my personal website which is built with React (Nextjs) and in this article I want to show you how you also can do it for any other react application.

How to add Google Adsense to Next.js applications

In this article I am going to explain, how you can implement Google Adsense in Next.js applications (or any other react applications). There are several approaches for implementing Adsense on a react site and I want to show you how you can add Adsense with privacy in mind.

How to deploy your GatsbyJS site on your own server

With Gatsby 4 bringing in Server-Side Rendering (SSR) and Deferred Static Generation (DSG) you need an alternative methode to just hosting static files. Each page using SSR or DSG will be rendererd after a user requests it so there has be a server in the background which will handle these requests and build the pages if needed.

Cap Formentor, Mallorca

Alcúdia, Illes Balears, Mallorca, Spanien

How to create a Mapnik stylesheet for displaying any data from PostgreSQL/PostGIS

In this article i want to show you how you can build your own Mapnik stylesheet for displaying any data from PostgreSQL/PostGIS. The Mapnik Stylesheet XML can be used for a tile-server with your custom style.

Tutorials for making 3D-looking maps with Blender and QGIS

This guide will help you prepare DEM data using QGIS in order to render 3D looking shaded-relief maps in Blender. Link: https://github.com/joewdavies/geoblender

Location Tracking and Visualization with Colota, PostgreSQL, Martin Tile Server and MapLibre

How I track my location continuously with Colota, my self-developed Android app, store it in PostgreSQL with PostGIS, serve vector tiles via Martin and render an interactive map with MapLibre GL JS.

Simple Image Placeholders with SVG

Tyler Sticka published an article on cloudflour where he presents an awsome library he made which allows you to create svg placeholders for img-elements. Link: https://cloudfour.com/thinks/simple-svg-placeholder/

Brünnstein

Went on top of the Brünnstein via the Dr.-Julius-Mayr-Weg and took a rest at the Brünnsteinhaus 🍰.

Hiking up the Brünnstein

Checklist - The A11Y Project

The creator/s of a11yproject.com have created a checklist for reviewing a website in terms of accessibility. Link: https://www.a11yproject.com/checklist/

Kranzhorn 05/21

Pretty easy climb with phenomenal view. ⛰️

Bike trip in the Chiemgau Alps

Bike trip in the Chiemgau Alps. Had to carry our bikes for a bit because of too much snow.

After work session with my new Scott Spark

After work session with my new Scott Spark 😎 happyplace #mountainbike #scottspark #chasingsunsets

First ride with my new spark

First ride with my new spark 🌄 #ridemore #scottspark #scottbikes #thatshowweroll

Fetching and storing activities from Garmin Connect with Strapi and visualizing them with NextJS

Step-by-step guide explaining how to fetch data from Garmin Connect, store it in Strapi and visualize it with NextJS and React-Leaflet.

Running on my own

In this article Francesco Schwarz is explaining how he fetches data from Garmin Connect and uses it to display runs on his website. Link: https://francescoschwarz.com/articles/running-on-my-own/

Creating Accessible Forms

WebAIM provides some very interesting documentation on how to create a web with web accessiblity in mind. Link: https://webaim.org/techniques/forms/controls

Using Webmentions in Eleventy

A brilliant post by Max Böck on how to get incoming and outgoing Webmentions for example via Bridgy and webmention.io and how to handle and filter the data to be able to finally implement webmentions on your website. Link: https://mxb.dev/blog/using-webmentions-on-static-sites/

Syntax Highlighting with Prism.js and Next.js

Prism.js is a compact, expandable syntax highlighter that was developed with modern web standards in mind.

Hosting NextJS on a private server using PM2 and Github webhooks as CI/CD

This article shows you how can host your Next.js site on a (virtual private) server with Nginx, a CI/CD pipeline via PM2 and Github Webhooks.