I am a college graduate from Hasso Plattner Institute (HPI) with a master's degree in IT-Systems Engineering. More about me on my website.
I frequently contribute to open source software and maintain libraries with hundreds of downloads per week. One of my oldest still-in-use open source projects is more than 8 years old. To date, I have made more than 900 pull requests to projects big and small, ranging from introducing new features to Visual Studio Code, adding features to react-redux, fixing bugs in the Caddy web server, rewriting documentation, to fixing minor bugs and typos.
I’m currently mainly working on
- cmfcmf/docusaurus-search-local: A local/offline search plugin for Docusaurus v2
- cmfcmf/roc-and-roll: A virtual tabletop simulator for D&D
|cmfcmf/OpenWeatherMap-PHP-API||A PHP API wrapper for global weather data from OpenWeatherMap.org. This project is more than 8 years old and still continuously maintained by me.|
|cmfcmf/docusaurus-search-local||A plugin that provides offline/local search that works behind a company firewall. It uses lunr.js for providing search functionality.|
Full Stack Projects
|AdventureLookup/AdventureLookup #PHP, #Symfony, #ElasticSearch||A community-driven website for finding tabletop adventures. I prototyped the concept in about a week with the goal of creating a minimal viable product. And it worked, people liked it, and the website went live!|
|cmfcmf/roc-and-roll #Typescript, #Node.js, #React, #Redux||A virtual tabletop simulator for playing roleplaying games, written in Node.js and React. All state is automatically synced between clients.|
|cmfcmf/CFRC (private repository) #TypeScript, #Node.js, #React, #Redux, #Material-UI||A model railroad control software with back- and frontend written in TypeScript. Data is synced in realtime between all clients. It is heavily optimized to work in this realtime scenario. The server is using Redux for state management and communicates with hardware using RS232 and UDP.|
|zikula/core #PHP, #Symfony
(I no longer work on this project)
|Zikula (previously named PostNuke) is a content management framework written in PHP. I was one of the lead developers from ~2013 to ~2016 and created more than 150 issues and more than 250 pull requests during this time. One of my biggest projects was integrating the Symfony Router. Working on Zikula taught me a lot about the importance of keeping backwards compatibility and all the problems that come with it.|
Writing code is not everything. I also regularly contribute to documentation, be it the introduction of new documentation   , fixing typos, or commenting the code I contribute.
I try to make contributing to my bigger projets cmfcmf/OpenWeatherMap-PHP-API and AdventureLookup/AdventureLookup as easy and accessible as possible.
I aim to provide easy to setup development environments, including browser-based environments. I write extensive contributing guidelines aimed at both developers and non-developers. I try to be encouraging and supportive to all contributors, because I know how much of a difference the behavior of people you are interacting with can make.
Reverse Engineering & Security Vulnerabilities
Around 2014, I was particularly interested in security vulnerarbilities and eventually found three vulnerabilities on big websites. While I no longer actively search for vulnerabilities, my knowledge and experience with them often helps me avoid them in code I write and review.
- I found an Open Redirect Vulnerability on twitch.tv, that apparently had already been reported but not yet been fixed.
- I found an Open Redirect Vulnerability on tumblr.com, which I eventually received a bounty for.
- I found a way to check if a private repository with a given name exists on github.com, which was out of scope of the bounty program at that time. I got some cool GitHub swag though!