skip to content


Pizzateig-Rezept Rechner (🇩🇪)

Ich mache gerne Pizza und kann mir nicht merken wie viel von welcher Zutat verwendet werden muss. Anfangs konnte ich mir die Schritte auch nicht merken. Ausserdem variiere ich gerne mal die Menge der Portionen, wobei mir mein Pizzateig-Rezept Rechner gerne behilflich ist—eine einfache React App (aktuell ohne Styling). Die Seite läuft auf meinem VPS (Ubuntu) bei Hetzner mit Caddy.

J-Starter: Homepage

Website that I built for my father-in-law's business using a free astro template. Unfortunately, I do not know anymore which template I used, because the new site had to be deployt quickly. A static site, that uses Astro and TailwindCSS and is running on my VPS at Hetzner (Ubuntu) with Caddy. It offers a searchable product catalogue, using React integration of Astro. My FIL changed his opinion and does not want a searchable product catalogue anymore.
The previous site was a nightmare and likely even malicious. Now, it is amazingly fast and a pleasure to look at—at least in comparison to the site as it was before. However, it is not completed yet, but we are getting there:

J-Starter: Data Portal

A simple web app that helps generating structured data for the homepage, built from scratch using React and a few elements from TailwindCSS.

Why is this needed?

The person that manually transpiled the old product catalogue from a PDF file does not know JSON and used Excel. Of course, there were lots of little errors and the data structure was not uniform. Converting the data from Excel added even more errors. Therefore, I decided to build this page, in order to enforce a structured and uniform data set.


The product catalogues on the data portal are dynamically rendered from JSON files. Currently, the JSON for two separate products can be processed. Already existing data sets can be imported, single entries can be added, edited, or deleted as well as downloaded.
Most likely it is not that interesting to browse, but it is not supposed to be interesting—it's boring business, right?! See for yourself: