Writing code, maintaining open-source software, solving problems. Also: rock concerts and traveling the world.
spectrum-analyzer. An easy to use and fast `no_std` library (with `alloc`) to get the frequency spectrum of a digital signal (e.g. audio) using FFT.
174audio-visualizer. Simple audio visualization library which is especially useful for developers to visually check audio algorithms against the waveform.
70beat-detector. Audio beat detection library that supports different audio input devices as source. You can pass a callback for each found beat to the library.
65ttfb. Library + CLI-Tool to measure the TTFB (time to first byte) of HTTP requests. Additionally, this crate measures the times of DNS lookup, TCP connect and TLS handshake.
49diplomarbeit-impl. Everything related to the practical work/implementation for my Diplom thesis project at TU Dresden.
44noto-sans-mono-bitmap-rs. Provides pre-rasterized characters from the "Noto Sans Mono" font in different sizes and font weights for multiple unicode ranges.
33docx4j-search-and-replace-util. Docx4JSRUtil library helps you to search and replace text inside docx-Documents parsed by Docx4J.
29paging-calculator. CLI utility that helps you to calculate indices into the page table from a virtual address. For x86, it outputs the indices into the page tables for both, 32-bit and 64-bit paging.
25generic-netlink-user-kernel-rust. Example that communicates between userland program (Rust and C) and Linux kernel module (written in C) via Generic Netlink. A custom Netlink family is created and used for this IPC.
23ws2818-rgb-led-spi-driver. Simple, educational driver for WS28xx RGB LED (chains) written in Rust. It uses SPI device for timing. Needs Linux and works definitely on Raspberry Pi.
22nixos-configs. My personal (public) NixOS configurations and common Nix(OS) modules, pkgs, and libs.
19tar-no-std. Library to read Tar archives (by GNU Tar) in `no_std` contexts with zero allocations. The crate is simple and only supports reading of "basic" archives, therefore no extensions, such as GNU Longname.
17phipsboot. PhipsBoot is a relocatable x86_64 bootloader for legacy boot written in Rust and assembly.
16gitlab-timelogs. CLI utility to support you with your time logs in GitLab.
16img-to-webp-spring-service. A Java Library to easily convert images to WebP, a Spring REST-Service for devs that uses the lib and an user-friendly Web UI for everyone else.
15multiboot2-binary-rust. A multiboot2-compliant Kernel prototype written in Rust. This project is mainly about the build setup and not a functional kernel.
14qemu-debugcon-linux-driver. A Linux driver for the QEMU Debugcon device packaged in Nix.
13lowpass-filter. Simple first-order digital lowpass filters, compatible with `no_std`. You can use it, for example, to get the low frequencies from a song.
12simple-chunk-allocator. A simple allocator written in Rust that manages memory in fixed-size chunks.
12linux-libc-auxv. A parser and builder for the Linux process initial stack layout - use it to decode or construct argc, argv, envp, and auxv (auxiliary vector).
11direct-syscalls-linux-from-rust. Direct syscalls to Linux from Rust code. Nothing special, but I wish someone had shown me this when I was in the second or third semester.
9eurorust-2025-code. Practical code examples for my EuroRust talk 2025 in Paris.
9libbruteforce. A multithreaded bruteforce library written in Rust. PLEASE DO NOT use this software to harm someones privacy in any kind! This project was made for fun and for teaching myself new things about Rust.
7ansi-escape-sequences-cli. A CLI utility installed as "ansi" to quickly get ANSI escape sequences. Supports the most basic ones, like colors and styles as bold or italic.
7tokio-js-set-interval. The crate `tokio-js-set-interval` allows you to use `setInterval(callback, ms)` and `setTimeout(callback, ms)` as in Javascript inside a `tokio` runtime (https://tokio.rs/).
71brc-rust. My attempt for the 1brc w/ Rust.
7generic-tm1637-gpio-driver-rust. Generic gpio driver for the tm1637 microcontroller written in Rust.
6wambo. All-in-one binary to convert decimal/bin/oct/hex + interpret data as i8-i64, u8-u64, and f32/f64 (IEEE-754).
6bit_ops. Bitwise operations on primitive integer types, but no_std and const-compatible. Provides a collection of typical bit manipulation operations that are primarily required in low-level development. Unlike other crates that provide tooling to create sophisticated high-level types with bitfields, the focus of bit_ops is to work on raw integers.
5rust-different-calling-conventions-example. This example shows how you can call functions that use different calling conventions from Rust code (in the same file).
5cmake-catch2-ci-example. Minimal CMake-based project building a trivial C++ library with Catch2-based unit tests.
4unix_exec_piper. unix_exec_piper helps you to exec multiple commands where STDOUT of one process is connected to STDIN of the next process. This is what a shell (like bash) does internally.
3rust-packed-overview. Small demo to properly understand the packed-representation modifier in Rust.
3dotfiles. My common dotfiles and configurations for UNIX-like systems but also other systems.
3guess-the-spotify-song-partygame. This repository was part of a 24h hackathon with a friend. Afterwards I further developed the outcome if this :) It' about a party game where each player use his smartphone as a buzzer and the fastest one that guessed a song (just by audio) wins a point. The game needs one player as the moderator/game master.
3slidev-slides. My public Slidev slides.
3hedron-minimal-roottask. This repository shows how to build and start a minimal roottask written in Rust on the Hedron microkernel/microhypervisor.
3assembly-examples. Several demos and examples with assembly by me.
2nflz. Lib + CLI-Tool named 'nflz' 'that takes a collection of numbered filenames in a directory, add leading zeros to the number and rename the files in that directory.
2malloc-log-lib. A shared object for Linux-Systems that you can preload into your binarys. It will trace malloc's and free's for you and give you stats about them in a logfile. I use Rust to build wrappers for malloc() and free(). Originally this is a project I made with C++. I tried to port it to Rust.
2runs_inside_qemu. Small no_std-lib that checks if the binary is running inside a QEMU virtual machine. Only works on x86/x86_64 platform.
2max-7219-led-matrix-util. Utility library for LED Matrix Displays using the MAX7219 microcontroller written in Rust.
2mac-sys-info. CLI + Library written in Rust to get detailed information about your Mac system. Including CPU, Cache, Memory, and more.
2wambo-web. Web-app to convert bin/oct/dec/hex, interpret data as float(IEEE-754), interpret as different integer types, and to show memory endianness.
2rust-clock. Basic analog wall clock (GUI)
1rust-kernel-x86_64-static-link-code-model-kernel. Minimal example that shows you how you build a kernel with Rust that is statically linked, i.e., not relocatable, and linked at the higher half of the address space, i.e., following the kernel code model of the System V ABI.
1java-graph-search. Easy to understand implementation of Breath First Search in a graph in Java. Each node has a number as identifier and the result is a stack of numbers you have to visit to come from A to B (your target).
1bash-like-cpp-shell. A demo bash-like shell for educational purposes - shows basics about pipes, fork and a lot of other UNIX facilities.
1unix-exec-output-catcher. Library to run executables in a child process and catch STDOUT and STDERR output on UNIX-systems.
1