Back

Personal Projects

Here is a list of my public personal software projects that I did that can be found on GitHub. Most of these can also be found on Docker.

Homepage (May 2022 - now)

I made this homepage using a template of a friend. I wrote it using next.js in Javascript then exported it as a static html.
I use next.js instead of direct HTML and CSS (which would be possible) because it is easier to develop with next.js because of the autocomplete and some helper packages.

Download Renamer & Mover (Jul 2021 - now)

Frequently downloading files, I needed an easy way to sort them on my server once downloaded.
At the beginning, I used Rename Expert to rename and move the files. This worked fine at the beginning but quickly became tedious.
As such, I made a programm that watched a folder for new files, renamed them according to a regex pattern and moved them to the correct folder. Also you could manually add mappings (e.g. translate file name X to file name Y and try to move again) via a discord bot where a log of what is happening is also being posted.
At first written in Java, I later rewrote it in Rust as an exercise to learn Rust.

HM Discord Bot (Jul 2021 - now)

During my study at the University of Applied Science of Munich (HM), I helped a friend run a discord server where students could get together. For this, a discord bot was built. I then began maintaining the bot with my friend in my second year.
The bot is written in Python but is currently being rewritten in Rust for better performance and a ground up redesign.

RPM Repository (Dec 2022)

Sometimes software is only available as a direct rpm download link with no rpm repository. This make updating a pain since you can't just do dnf update to update a package, what should normally be the way on Linux.
Examples of such software includes Zoom and DBeaver.
As such, I made a shell script that checks these websites for new rpm packages, signs them and creates a rpm repository.

PiHole Adlist Merger (May 2022 - Jan 2023)

Running a PiHole at home, I needed ad lists to be able to block ads and tracking links. As the amount of links quickly became so much that updating the database took too long, I decided to write a programm that takes all the ad list links and puts them together into one big list while removing duplicates.

Script-Server Backup (Mar 2022)

At the university faculty, there is a server that has old exams so that students can look at them to prepare for exams. This is done since not many professors give these old exams to students. But since this server is not really approved by the university, there is the possibility at any moment that the university decides to shut it down. As such, I made a programm that periodically checks the server for changes and puts the new files into a git repository to allow for history tracking.

ATConnect

From June 2020 to June 2021 I managed with some friends a virtual ATC Group for Microsoft Flight Simulator 2020. For that I started working on two project that weren't finished when I left the group. As such, these projects are not complete.
  • Discord Bot (Jan 2021 - Jun 2021)

    We wanted a discord bot on our server to make event planing and similar easier. I started building it and got pretty far before the end of the project.
  • .kml to Euroscope Parser (Sep 2020 - Aug 2021)

    We also needed an easier way to convert .kml files (files got from Google Earth) into files that can be used by Euroscope, a virtual ATC software.
    I managed to finish the .kml to .ese parser but didn't start on the .kml to .sct parser.

Python Internet Speedtest (Apr 2019)

At that time our internet connection was very unstable. To be able to prove this to our ISP, we needed a dataset of internet speed that would show that.
As such, I made a python script that would periodically check the internet speed and put it in a log for later use.