Open Source & Maintainer
Some projects stem from necessity, others from the challenge to do things better – and some of these projects evolve into long-term tools. To this day, I maintain several open-source libraries that I developed independently. A few examples:
- tflori/orm: A high-performance ORM created with the drive to build a leaner alternative to existing libraries.
- tflori/verja: A flexible library for validating user input (and other data).
- tflori/dependency-injector: A lightweight dependency injection container for clean decoupling.
- tflori/hugga: A lean library for interactive console applications in PHP – focusing on flexible output formatting, tables, and direct keyboard input handling.
Additionally, I took over maintenance of getopt-php a few years ago. Although the project did not originate with me, I have significantly developed it over the years – today it is used as a dependency by over 100 packages.
You can find an overview of my publicly accessible repositories and experiments on GitHub and on my GitLab.
Pragmatic Custom Developments
Not every tool needs to become a polished open-source project for the masses. Often I build things simply because existing software doesn't meet my specific requirements or I want tailored solutions for my day-to-day workflow:
- fan-ctrl-php: Hardly any common fan control tool under Linux cleanly reads GPU temperatures via Nvidia commands. I wrote my own daemon for this, which runs as a background service and has reliably solved this issue for me for years.
- vte-console: A lightweight dropdown terminal for Linux written in Python. If you're currently using a Wayland compositor that supports the
zwlr-layer-shell-v1 protocol, feel free to give it a try.
- Ergo2040: A self-built, ergonomic split keyboard with 83 individually addressable backlit keys and customized KMK firmware. The goal was an ergonomic layout without losing the ability to type on a standard keyboard.
- network-gallery & riki-cms: In-house developments (e.g., for the family gallery and this website). They meet my needs and leave plenty of room for my own ideas – even if, realistically speaking, they cannot compete with established tools and their massive communities.
Infrastructure & Self-Hosting
I run my services fully self-hosted on a Linux root server. Alongside GitLab CE, NextCloud, OnlyOffice, SonarQube, Roundcube, and various databases (MySQL, MariaDB, PostgreSQL), I also host all my personal websites there.
To keep the setup organized, I developed a CLI tool that handles administration. It encapsulates Docker Compose using a modular system (service and vhost enabling) and directly combines it with Nginx configurations as well as automated SSL certificate management via DNS challenges.
Away From the Screen
The joy of construction and design isn't limited to code. When I'm not at the computer, I'm occasionally out with my camera or spending time in my small workshop.
Woodworking has been a long-standing passion: ever since I was 16, I've been building custom desks designed with a special focus on PC work. Every now and then, other handcrafted pieces come to life – like a lowboard featuring a self-poured river table top, an asymmetric structure, and angled joinery.