Projects

My own projects, work from my apprenticeship and studies, and the companies I've worked for. Each entry says what it is, what I did and what I used.

My own projects

flutter_template

A Flutter monorepo as the starting point for my own apps

Dart, Flutter · private

Each new app copies the template once and then goes its own way. It includes my own MVC state management with a lint plugin that enforces its rules, localization and a base setup for macOS, Windows and Linux. It also has Dart packages of my own whose code is generated with build_runner. barrierewacht is being built on it.

barrierewacht

A tool web agencies use to check their clients' websites for accessibility problems

in development · Flutter, Dart · a product of my company

An agency adds the websites it looks after. barrierewacht checks them automatically against WCAG 2.2 AA, ranks the problems by importance and checks again on a schedule. It's an automated audit tool, not a certified BITV test and not legal advice.

groundwork

Workflows and working principles for Claude Code, kept in markdown files under version control

Markdown, Python, just · Apache License 2.0 · open source on GitHub

groundwork keeps what you learn about working with AI coding agents in markdown files: workflows, working principles and slash commands. That puts it under version control instead of in chat history. A small Python script assembles the files into the directory Claude Code reads at the start of every session. It also reports notes that have drifted, such as a broken link. I published groundwork as open source. Your own details, such as the vendors you use, go in a private layer on top.

Minecraft mods

Minecraft mods in Java, with public source code

since 2026 · Java · MIT License · in development, no release yet · source on GitHub

  • villager_voices Villagers react to what happens to them, with voices and text. The first version targets Fabric.
  • grounded_villages Villages generate on one level of dry ground, in sizes from hamlet to city. Planned for Fabric, NeoForge and Forge, Minecraft 1.20.1 to 26.2.
  • Create Fly add-ons Small add-ons for the Create Fly mod, all for Minecraft 26.2 and Fabric:
    • Brass Compass A brass compass that remembers every lodestone it has been shown and points at the one you choose.
    • Metered Motor A motor bought from the toolsmith that uses up emeralds according to the load on it.
    • Synthetic Diamonds A press that turns coal into a diamond, with a small chance.
    • Villager Customers Villagers as customers.

Work

oculavis GmbH (now maintastic), Aachen

Work on a remote maintenance platform and three Unity apps

02/2021–07/2023 · apprentice, working student from 08/2022 · C#, Unity

At oculavis I continued my apprenticeship and joined the computer vision and augmented reality team. As an apprentice I worked on the main product, a platform for remote maintenance and remote support. Service teams and specialists use it to work on faults together. I also completed two white-label Unity apps for EU-funded research projects. Then there was another Unity app, built from a template, that shows machine data over MQTT; it was the topic of my seminar paper.

Apodius GmbH (Hexagon Manufacturing Intelligence), Aachen

WPF user interfaces and internal research projects with OpenCV, in C#

08/2019–01/2021 · apprentice · C#, WPF, OpenCV

As an apprentice I worked on the main application, on its WPF user interfaces in C#. In internal research projects with OpenCV, I detected a Siemens star in the camera image and computed the focus quality from it. I also wrote my own version of the focus peaking found in Sony cameras, which highlights sharp edges in the image. I helped build and install camera systems and ran tests on a near-production system in the test lab.

From university

An app for a forest's digital twin

A Flutter app that links photos to the digital twin of a forest

2020/2021 · group project at FH Aachen · my part: mainly the frontend · Flutter

For a required project at university, our group built a Flutter app. It was connected to the system of RWTH Aachen University's Institut für Mensch-Maschine-Interaktion (MMI), its institute for human-machine interaction. The institute was researching digital twins of forests, in the context of the research project “Kompetenzzentrum Wald und Holz 4.0”. You upload a photo, and our backend analyzes it and queries the digital twin server. The app then shows information on individual trees, staff or machines. We chose Flutter ourselves; my part was mainly the frontend. We presented the app at the university's software showcase.

Seminar paper: MQTT in Unity apps

Bringing machine data into a Unity app over MQTT

12/2021 · FH Aachen · C#, Unity, MQTTnet · code excerpts on GitHub

My seminar paper (title in German: „Einbindung einer MQTT Schnittstelle in Unity-Apps zur erweiterten Darstellung von Maschineninformationen“) shows how a Unity app receives and displays machine information over MQTT. The C# code excerpts are public: a client interface, a client built on MQTTnet and a connection manager. The topic came from my work at oculavis, from the Unity app for machine data.

Other experience

  • Ethereum libraries in Dart. Libraries that let Dart and Flutter apps work with Ethereum. One of them writes Dart code from a smart contract's interface.
  • Smart contract project for a US start-up. Delivered from gathering the requirements to handover, with all coordination in English.

Where it started

A timetable app for my Android phone

school years · Java, XML layouts, some Kotlin, SQLite

At school I taught myself Java and built a timetable app for my own phone, which I used at school. Rebuilding it in Flutter was my reason to try Flutter. I never got around to it.