Offen für Remote-Rollen

Ich baue APIs, Integrationen und die Werkzeuge drumherum.

Full-Stack-Entwickler mit sieben Jahren Erfahrung — hauptsächlich Backend, API und Integration, dazu viele Tools, die ich gebaut habe, weil ich sie brauchte.

StreamPopHervorgehobenPrivat

StreamPop

Ein selbst gehostetes Toolkit für einen Twitch-Stream.

Channel-Point-Alerts, ein Chat-Overlay mit 7TV-, BTTV- und FFZ-Emotes, ein Player für Songwünsche und Text-to-Speech über ElevenLabs. Jedes Overlay verbindet sich über Socket.io mit einem Express-Server, sodass die OBS-Quellen ohne Neuladen live aktualisieren.

NodeExpressSocket.io
anilook
Privat

anilook

Finde heraus, wo ein Anime synchronisiert ist.

Ein Kommandozeilen-Tool, das prüft, ob ein Anime eine Synchronfassung hat und in welcher Sprache, indem es Daten von AniList und anisearch kombiniert.

Python
RoseClipper
Privat

RoseClipper

Clip-Momente in Twitch-VODs automatisch finden.

Durchsucht ein Twitch-VOD mit einem Audiomodell nach Gelächter und liefert die Momente, die sich zum Clippen lohnen — so muss man nicht alles noch einmal ansehen.

Python
01 / 11
7+
Jahre Erfahrung
3
Jahre Ausbildung
20+
Projekte umgesetzt
JavaJava
SpringSpring
KotlinKotlin
TypeScriptTypeScript
VueVue
NuxtNuxt
ReactReact
NodeNode
PythonPython
RustRust
DockerDocker
KubernetesKubernetes
ArgoCDArgoCD
LinuxLinux
PostgreSQLPostgreSQL
RedisRedis
GitGit
JavaJava
SpringSpring
KotlinKotlin
TypeScriptTypeScript
VueVue
NuxtNuxt
ReactReact
NodeNode
PythonPython
RustRust
DockerDocker
KubernetesKubernetes
ArgoCDArgoCD
LinuxLinux
PostgreSQLPostgreSQL
RedisRedis
GitGit

Ausgewählte Arbeiten

Eine Auswahl dessen, was ich gebaut habe — das meiste, um ein eigenes Problem zu lösen.

WarpedCommissions
Open Source

WarpedCommissions

Ein Plugin für tägliche Aufträge in Minecraft.

NPCs vergeben Aufträge, die täglich wechseln. Wer sie erledigt, steigert sein Ansehen beim jeweiligen NPC — und weil die NPCs untereinander Beziehungen haben, bringt die Arbeit für den einen auch Ansehen beim anderen. Tägliche Serien zahlen mehr, und bei Lieferaufträgen sinkt die Belohnung, wenn man unterwegs Schaden nimmt.

Java 21Gradle
github.com/xmorose/warpedcommissions
music-dl
Open Source

music-dl

Ein Musik-Downloader für die Kommandozeile.

Link rein, und es lädt den Track herunter, taggt ihn und legt ihn in einem Artist/Album/Track-Ordner für Navidrome ab. Das Backend wählt es automatisch — spotdl für Spotify, streamrip für Tidal, yt-dlp für den Rest. Es füttert Spindle.

Python
github.com/xmorose/music-dl
Minecraft Sound BrowserLive

Minecraft Sound Browser

Jeden Minecraft-Sound suchen und abspielen.

Eine Web-App zum Suchen und Abspielen von zehntausenden Minecraft-Sounds über alle Versionen hinweg, mit Tonhöhenverschiebung, Mixing und Filtern. Gebaut, um bei einem großen Datensatz schnell zu bleiben.

VueTailwind
minecraftsounds.com
MidasOpen Source

Midas

MIDI zu Text und zurück, für Sprachmodelle.

Wandelt MIDI-Dateien in reinen Text um, den ein Sprachmodell lesen und bearbeiten kann, und wieder zurück — Tempo, Taktarten und mehrere Spuren bleiben erhalten.

JavaScript
github.com/xmorose/midas
anilook
Privat

anilook

Finde heraus, wo ein Anime synchronisiert ist.

Ein Kommandozeilen-Tool, das prüft, ob ein Anime eine Synchronfassung hat und in welcher Sprache, indem es Daten von AniList und anisearch kombiniert.

Python
RoseClipper
Privat

RoseClipper

Clip-Momente in Twitch-VODs automatisch finden.

Durchsucht ein Twitch-VOD mit einem Audiomodell nach Gelächter und liefert die Momente, die sich zum Clippen lohnen — so muss man nicht alles noch einmal ansehen.

Python
WarpedLavaFishing
Open Source

WarpedLavaFishing

Angeln in Lava für Minecraft.

Fügt das Angeln in Lava mit der vollen Vanilla-Mechanik hinzu — Warten, Anbiss, Einholen — und löst das normale Angel-Event aus, damit andere Plugins weiter funktionieren. Angelhaken ignorieren Velocity, also bewegt es den Schwimmer stattdessen mit einem versteckten Schneeball.

Java 21
github.com/xmorose/WarpedLavaFishing
PrismaSprite
Open Source

PrismaSprite

Pixel-Sprites im Browser umfärben.

Sprite rein, Palette raus, Farben neu zuordnen, um neue Varianten zu erzeugen. Ein KI-Helfer kann aus einer kurzen Beschreibung eine Farbzuordnung vorschlagen.

Vue 3TypeScript
github.com/xmorose/PrismaSprite

Mehr, auf Anfrage

Darüber hinaus gibt es eine größere Menge privater Arbeit — vor allem eigene Spielsysteme und Client-Werkzeuge. Ich gehe das gerne im Detail durch:

  • Eine eigene Mob-Spawning-Engine mit gewichteten Spawn-Gruppen, virtuellen Spawnern und ereignisgesteuerten Begegnungen.
  • Ein Quest- und Codex-System, das Fortschritt über ein Dutzend Zieltypen hinweg in persistenten Entity-Daten verfolgt, mit Glob-Muster-Zielen und gestuften Belohnungen.
  • Mehrraum-Dungeon-Instanzierung, die ein kostenpflichtiges kommerzielles Plugin ersetzt hat.
  • Client-seitige Spiel-Mods auf einer brandaktuellen, unobfuskierten Toolchain — darunter ein Terrain-Culling-Renderer, der sich in die Vanilla- und Sodium-Pipelines hängt, und eine serverweise Datenbank jedes geöffneten Lager-Containers.
  • Eine Reverse-Engineering-Pipeline, die proprietäre 3D-Modelle — Geometrie und Animation — aus einem gecachten Asset-Pack und lebenden Entities zurück in eine bearbeitbare Quelldatei rekonstruiert.

Fähigkeiten

Backend

JavaJava
SpringSpring
KotlinKotlin
PythonPython
PostgreSQLPostgreSQL
MongoDBMongoDB
RedisRedis

Frontend

VueVue
NuxtNuxt
TypeScriptTypeScript
ReactReact
AngularAngular
TailwindTailwind

Infrastruktur

DockerDocker
KubernetesKubernetes
ArgoCDArgoCD
LinuxLinux
GitGit

Testing & Build

PlaywrightPlaywright
CypressCypress
MavenMaven
GradleGradle

Die Tools, die ich am meisten nutze. Neue lerne ich, wie ein Projekt sie braucht.

Über mich

Marvin Schwarz

Ich bin Full-Stack-Entwickler mit sieben Jahren Erfahrung, nach einer dreijährigen Ausbildung. Ich arbeite über den ganzen Stack, am meisten zu Hause bin ich aber im Backend — APIs, Integrationen und den Systemen, die alles verbinden.

Vieles, was ich baue, ist aus einem eigenen Bedarf entstanden. Ich betreibe einen Minecraft-Server, der jedem verfügbaren Plugin entwachsen ist, also habe ich meine eigenen geschrieben — rund dreißig. Ich hoste meine Musik selbst, also habe ich ein Statistik-Dashboard und einen Downloader dazu gebaut. Die meisten Projekte hier unten kommen aus einem Problem, das ich hatte.

Mir ist sauberer Code wichtig, Systeme, die laufen, und Werkzeuge, die eine Sache richtig machen.

Kontakt aufnehmen

Offen für Remote-Rollen — besonders Integrations-, API- und Backend-Arbeit.

Ob du einstellst, zusammenarbeiten möchtest oder einfach eine Frage hast — der Posteingang ist immer offen.