Sie sind offline — einige Inhalte sind eventuell nicht aktuell.
Projekte

Was ich baue

Eine Auswahl meiner Arbeit — von KI-gestützten Web-Apps bis zu Open-Source-Tools. Kein Portfolio-Theater: alles hier läuft echt, im Betrieb oder öffentlich auf GitHub.

Produkte

Anwendungen für echte Nutzer

Fünf Anwendungen im Betrieb, mit Konten, Zahlungen und echten Nutzern. Der Quellcode ist nicht öffentlich, die Handschrift dieselbe.

Event-Plattform für Berlin, gostumblr.com

Das Wochenende, nach dem eigenen Musikgeschmack sortiert

GoStumblr-Startseite: „Dein Wochenende. Dein Geschmack." mit Kennzahlen zu Events, Locations, Artists und Genres
GoStumblr: vier Telefon-Ansichten nebeneinander, mobiler Feed, Bar-Auslastung als Liste und Karte, Artist-Graph
GoStumblr auf dem Smartphone: Startseite mit Kennzahlen und Einstieg

Sammelt Partys, Konzerte, Märkte und Ausstellungen aus sieben Quellen, darunter Resident Advisor und Ticketmaster, und rankt sie je Person: über einen Genre-Graphen mit mehr als 1.400 gewichteten Beziehungen, Lieblingskünstler, Lieblingsorte, Entfernung und Uhrzeit. Claude fasst jedes Event zweisprachig zusammen, klassifiziert Typ und Genres und sortiert Duplikate aus. Dazu live die Auslastung von 112 Berliner Bars, ein Ticket-Zweitmarkt mit Vertrauenssystem und ein wöchentlicher Digest per Mail.

  • KI-gerankter Feed mit Score-Aufschlüsselung je Karte, Filter nach Tag, Typ und Entfernung
  • Über 8.900 Künstlerprofile mit Ähnlichkeitsgraph, Vorlieben in drei Stufen, Benachrichtigung bei neuen Terminen
  • Bar-Auslastung in Echtzeit als Liste und Karte, gescrapt alle 7 bis 12 Minuten in der Nacht
  • Ticket-Zweitmarkt: Inserate, Übergabe-Bestätigung beider Seiten, Bewertungen, Betrugsschutz
  • Community-Events mit Freigabe, öffentliche Profile, Web-Push, YouTube- und SoundCloud-Sets je Lineup
Tests
137
Scraper
7
Städte
5
  • Python 3.12
  • FastAPI
  • PostgreSQL 16
  • React 19
  • Claude Haiku

Camping-Plattform für Europa, via.camp

Stellplätze finden, Trips planen, nichts vergessen

ViaCamp-Startseite: „Dein bestes Camping-Erlebnis. In einer App." mit Kennzahlen zu Stellplätzen und Ländern
ViaCamp: Feature-Abschnitt mit Karte, Heatmap der Stellplatzdichte und Erklärtexten
ViaCamp auf dem Smartphone: Startseite mit Pfadfinder-Programm und Einstieg

55.000 Stellplätze und über 230.000 Trinkwasser- und Service-Punkte in 58 Ländern auf einer Karte, mit Dichte-Heatmap und Textsuche. Der Routenplaner rechnet mit dem eigenen Fahrzeugprofil: selbst gehostetes Truck-Routing beachtet Höhe, Breite und Gewicht und warnt vor Brücken und Sperrungen auf der Strecke. Fünf-Tage-Wetter je Platz, Reisetagebuch, Packliste mit über 150 Punkten, vier Camping-Rechner mit Diagrammen. Ohne Werbung, ohne Tracking, Daten in Deutschland.

  • Truck-Routing mit Fahrzeugprofil aus über 60 Presets, Warnungen zu Höhe, Breite und Gewicht je Abschnitt
  • Trips mit Stationen per Drag-and-drop, kürzeste Route, Etappen mit Kilometern, Fahrzeit und Spritkosten
  • Wetter-Overlay auf der Karte, Fünf-Tage-Vorhersage pro Platz, Vergleich zweier Regionen
  • Rechner für Gas, Wasser, Strombudget und Reisekosten, jeder mit eigener Visualisierung
  • Favoriten, besuchte Plätze mit Kilometerstand, Share-Links mit Open-Graph-Vorschau, offline im Browser
Tests
956
Stellplätze
55.000+
Länder
58
  • Node.js
  • Express
  • PostgreSQL
  • PostGIS
  • Leaflet
  • Valhalla

Bewerbungs-Werkstatt mit Claude, applyforge.de

Vom Stelleninserat zum fertigen Bewerbungspaket

ApplyForge-Startseite: „Bewerbungen, die überzeugen." mit Einstieg zur kostenlosen Nutzung
ApplyForge: Abschnitt „So funktioniert’s" mit den Schritten von der Analyse zum Dokument
ApplyForge auf dem Smartphone: Startseite mit Claude-Hinweis und Einstiegsknopf

Liest eine Stellenanzeige ein, gleicht sie mit dem eigenen Profil ab und schreibt Anschreiben, Lebenslauf und Bewerbungs-Mail passend zur Stelle, als DOCX und PDF nach DIN 5008, ohne die üblichen KI-Floskeln im Einstieg. Vorab sagt eine Match-Analyse, wie gut das Profil passt und wo Lücken liegen. Ein Tracker führt jede Bewerbung durch zehn Status-Stufen, der Karriere-Coach schreibt aus dem Profil einen Report mit Handlungsplan. Profil, Dokumente und Tracker liegen mit AES-256-GCM verschlüsselt in der Datenbank.

  • Zwei Modi, angestellt oder Freelancer: Tonalität, Inhalte und Dokumentaufbau passen sich an
  • Profil-Import aus PDF, DOCX oder GitHub mit automatischer Skill-Erkennung, OCR für gescannte Zeugnisse
  • Match-Analyse vor der Generierung mit Prozentwert, Stärken, Lücken und Empfehlungen
  • Bewerbungstracker mit Interviews, Gehaltsangeboten, Notizen und erneutem Download aller Pakete
  • Öffentlicher Gehalts-Kompass und Arbeitsmarkt-Pulse ohne Konto, Credits statt Abo
Status-Stufen
10
Dokumentfarben
8
Ausgabe
DOCX + PDF
  • Python 3.11
  • Flask
  • Claude API
  • Vanilla JS
  • SQLite
  • Stripe

Privates Projekt: Web-App auf offenen Daten, kiezfinder.celox.io

Einchecken, und die Stadt sagt, welcher Kiez das ist

Kiez-Finder: Karte von Berlin mit eingezeichneter Grenze des Reuterkiezes und der Pass-Karte mit Bezirksregion, Bezirk, Adresse und Statistik
Kiez-Finder: Sektoren-Overlay färbt alle Kieze nachbarschaftsbewusst ein, der eigene Kiez ist hervorgehoben
Kiez-Finder: Heatmap nach Bodenrichtwert über ganz Berlin, Legende rechts unten
Kiez-Finder auf dem Smartphone: Pass-Karte mit Reuterkiez, Adresse und Statistik über der Karte

Ein Tipp auf den Standort-Knopf, und die Kamera fliegt zum eigenen Kiez, dessen amtliche Grenze sich selbst einzeichnet: Kiez, Bezirksregion, Prognoseraum, Bezirk, dazu Adresse und Einwohnerzahl aus der amtlichen Statistik. Die Zuordnung läuft als Point-in-Polygon im Browser gegen die 542 Berliner LOR-Planungsräume, der Standort verlässt das Gerät nicht. Dieselbe Engine bedient Frankfurt und Darmstadt. Dazu eine Schnitzeljagd über 1.961 Orte, Heatmaps nach Miete, Alter und Dichte, und der Mauerverlauf von 1989 im Archivlook.

  • Fuzzy-Suche über alle Ebenen und rund 11.400 Straßen, mit Umlaut- und „straße"-Faltung
  • Umgangssprachliche Kieze als eine Fläche: Schillerkiez ist die Summe seiner vier Planungsräume
  • Schnitzeljagd mit 1.023 Sehenswürdigkeiten, 300 Bars und 120 Clubs aus Wikidata und OpenStreetMap, mit Entfernung zum echten Standort
  • Heatmaps je Planungsraum: Bevölkerungsdichte, Durchschnittsalter, Angebotsmiete, Bodenrichtwert, Orte-Dichte
  • Offline-fähige PWA: alle 18 Datensätze werden vorab geladen, kein API-Schlüssel, keyless Karten-Tiles
Berliner Kieze
542
Städte
3
Unit-Tests
1.259
  • Vanilla JS
  • MapLibre GL
  • Vite
  • PWA

Sprachassistent als Overlay für Desktop, Android und Browser

Frage sprechen, Antwort lesen oder hören, ohne Fensterwechsel

stupidisco-Startseite: „Perfekte Antworten auf jede Frage. Sofort." neben einem Android-Telefon mit dem Overlay
stupidisco: Feature-Kacheln zu Live-Transkription, KI-Antworten, Vorlesen und Floating Overlay
stupidisco auf dem Smartphone: Startseite mit Download-Knöpfen für Google Play und Web-App

Ein kleines, verschiebbares Overlay über jeder laufenden Anwendung: die gesprochene Frage wird per Deepgram live transkribiert, Claude antwortet Token für Token, und auf Wunsch liest eine Stimme die Antwort vor, noch während sie entsteht. Gebaut für Interviews, Live-Recherche und Zwischenfragen, bei denen kein Fenster in den Vordergrund darf. Als Desktop-App, Android-Overlay oder direkt im Browser, zehn Anfragen sind kostenlos, eigene API-Schlüssel braucht niemand.

  • Live-Transkription per Deepgram, während man noch spricht
  • Antworten von Claude als Stream, Text für Text sichtbar
  • Vorlesen per Text-to-Speech, das schon beim Streaming beginnt
  • Interview- und Transkriptionsmodus, dunkles verschiebbares Overlay, das nie in den Weg gerät
  • Desktop-App, Android-APK und Web-App aus einer Codebasis, zehn Anfragen gratis
Plattformen
3
Gratis-Anfragen
10
API-Schlüssel nötig
0
  • Deepgram
  • Claude API
  • Text-to-Speech
  • Android
  • Desktop

Zahlen: Stand September 2026.

Open Source

Zwölf Projekte im Detail

Alle zwölf liegen mit Quelltext, Tests und Releases unter MIT-Lizenz auf GitHub. Jedes davon läuft: als App auf dem Rechner, auf dem Handy oder als Dienst im Netz.

Desktop-Werkzeug für macOS und Windows

5 3

Ein Hotkey, der ganze Werkzeugkasten

Inspector Rust: systemweiter 10-Band-Equalizer mit leuchtendem Spektrum im Popup-Fenster
Inspector Rust: Zwischenablage-Verlauf mit acht Einträgen und Vorschau eines Docker-Befehls
Inspector Rust: Netzwerkmonitor mit Weltkarte der ausgehenden Verbindungen und Serverliste
Inspector Rust: Inline-Rechner löst sqrt(144)*2+18 = 42 direkt in der Suchzeile

Strg+Leertaste öffnet über der aktiven App ein rahmenloses Fenster: Zwischenablage-Verlauf, Textbausteine, Rechner, Screenshots mit Texterkennung, ein systemweiter Equalizer und über 70 Befehle in einer einzigen Suchzeile. Enter fügt das Ergebnis dort ein, wo der Cursor vorher stand. Der Kern arbeitet lokal: Daten liegen mit AES-256 verschlüsselt auf dem eigenen Rechner, ohne Konto und ohne Telemetrie.

  • Zwischenablage-Verlauf mit 1.000 Einträgen, dedupliziert, durchsuchbar, mit Pins und Notizen
  • Textbausteine in vier Modi, inklusive Auto-Expansion beim Tippen und Platzhaltern für Datum, Uhrzeit und Cursor
  • Screenshots mit Anmerkungs-Editor, Bildschirmaufnahme als MP4 und Texterkennung für jeden Bildschirmbereich
  • Systemweiter 10-Band-Equalizer mit 20 Presets, der auf jede Audioausgabe wirkt
  • Rechner, Einheiten- und Farbumrechner, 2FA-Tresor, Netzwerkmonitor und Song-Erkennung direkt in der Suchzeile
Unit-Tests
4.511
Zeilen Code
184k
Befehle
70+
Release vom 30.08.2026
v0.158.0
  • Rust
  • Tauri 2
  • React 19
  • TypeScript
  • Tailwind 4

Rhythmus-Spiel für macOS, Windows und Linux

5 0

Fünf Spuren, eigene Musik, eine 3D-Bühne, die mitspielt

BeatByte im Spiel: fünf Spuren laufen auf eine 3D-Konzertbühne zu, mit Scheinwerfern, PA-Türmen, Band und Publikum; Hype läuft mit doppelten Punkten
BeatByte: sternförmige Noten auf violettem Griffbrett markieren eine Phrase, die die Hype-Anzeige füllt
BeatByte-Song-Browser: durchsuchbare Liste aller Songs, rechts Schwierigkeitsgrad, Notenzahl, Bestwert und Sternebewertung des gewählten Titels
BeatByte-Ergebnisbildschirm: Rang S, 100 Prozent Genauigkeit, 898 perfekte Noten, Timing pünktlich, darunter Chips zum Bewerten

Ein eigenständiges Rhythmus-Spiel in der Tradition der Fünf-Spuren-Gitarrenspiele, von Grund auf in Rust und Bevy gebaut. BeatByte bringt keine Songs mit: Eigene Musik hineinziehen, dann analysiert eine lokale Pipeline Tempo, Anschläge und Melodie und erzeugt eine Notenspur in vier Schwierigkeitsgraden. Gespielt wird auf einer 3D-Konzertbühne mit Lichtanlage, PA, Band und tanzendem Publikum in sechs Themes. Bis zu vier Spieler an einem Rechner, Karaoke-Texte im Takt, 300 Erfolge. Kein Konto, keine Cloud, spielt offline.

  • Automatische Notenspur aus WAV, OGG, FLAC, MP3 und M4A, deterministisch und lokal; ein Editor mit Wellenform, Raster und Testspiel bessert nach
  • Song-Browser mit Suche über die ganze Bibliothek und Schwierigkeits-Vorschau beim Verweilen
  • Karaoke-Texte aus lrclib oder eigener .lrc, optional wortgenau ausgerichtet von einem lokalen Modell
  • Tastatur, Gamepad und Gitarren-Controller, frei belegbar, mit nativem Treiber für den X-plorer; Profile für Links- und Rechtshänder
  • Lokaler Mehrspieler für zwei bis vier Personen, Übungsmodus mit 50 bis 100 % Tempo und Schleifen, 300 Erfolge
  • Farbenblind-sicher ab Werk: jede Spur hat ihre eigene Notenform; Blitze, Bühnenbewegung und Effektstärke sind regelbar
Tests
2.365
Crates
16
Erfolge
300
Release vom 27.10.2026
v0.19.9
  • Rust
  • Bevy 0.19
  • wgpu
  • rodio
  • Symphonia
  • ONNX
  • SQLite

Wecker-App für Android 8 und neuer

7 4

Der Wecker, der sich nicht wegdrücken lässt

Brutus klingelt im Hardcore-Modus: große Uhrzeit, Abzeichen, Rechenaufgabe 174 + 379 mit Ziffernblock, Schieberegler zum Schlummern
Brutus-Weckerliste: drei Alarme mit Wochentagen, Aufgaben-Chips und Countdown bis zum nächsten Klingeln, einer davon deaktiviert
Brutus-Schüttelaufgabe: Fortschrittsring bei 9 von 30 Schüttlern, „Noch 21 mal!"
Brutus nach beiden Aufgaben: „Geschafft! Guten Morgen" und erst jetzt der Knopf „Alarm stoppen"

Der Stopp-Knopf erscheint erst, wenn jede gewählte Aufgabe erledigt ist: Rechenaufgaben lösen, das Telefon schütteln oder einen QR-Code scannen, der am Badezimmerspiegel klebt. Brutus stellt die Weckerlautstärke auf Maximum, ignoriert „Nicht stören", übersteht Neustarts und lässt sich im Hardcore-Modus nicht einmal über die Lautstärketasten leiser stellen. Alle Alarmtöne werden auf dem Gerät synthetisiert, die APK bleibt unter fünf Megabyte.

  • Drei kombinierbare Aufgaben je Alarm: Mathe (1 bis 10 Aufgaben), Schütteln (10 bis 100), QR-Scan
  • Hardcore-Modus klemmt die Lautstärke auf Maximum und schluckt die Hardware-Tasten, solange es klingelt
  • Ultra-Hardcore klingelt zehn und fünfzehn Minuten nach dem Ausschalten erneut, bis 30 Schritte gegangen sind
  • Zwölf live synthetisierte Alarmtöne, von Klaxon und Sirene bis Presslufthammer und Zahnarztbohrer
  • Sonnenaufgangs-Voralarm, Widget, Weltuhr, Stoppuhr und Timer in Material 3 Expressive
Unit-Tests
243
APK
4,2 MB
Voraussetzung
Android 8+
Release vom 15.08.2026
v2.2.0
  • Kotlin
  • Jetpack Compose
  • Material 3 Expressive
  • Room

Dashboard für KI-Coding-Agenten, lokal oder gehostet

14 2

Tokens, Kosten und Limits von Claude Code, Codex und Antigravity

Token Tracker: Nutzungslimits von Claude und Codex, Balken je Fenster mit Plan-Strich, schraffierter Hochrechnung bis zum Reset und Warnung, wann das Wochenlimit voraussichtlich leer ist
Token Tracker: Kostenaufschlüsselung nach Input und Output, kumulierte Kosten, Wochentags-Aktivität und Cache-Effizienz
Token Tracker: Achievements gefiltert auf „Fast geschafft“, jede Karte mit Fortschrittsbalken und Stand
Token Tracker auf dem Smartphone: Kopfzeile mit Limit-Chips, Anbieter-Filter und die Nutzungslimits untereinander

Liest die Sitzungsprotokolle von Claude Code, OpenAI Codex und Google Antigravity und rechnet daraus Verbrauch, API-äquivalente Kosten und echte Arbeitszeit: je Projekt, Modell, Werkzeug und Gerät, live per Server-Sent Events. Die Nutzungslimits der Abos stehen in jedem Reiter, mit Hochrechnung bis zum Reset und dem Zeitpunkt, an dem ein Limit leer ist. Jede Nachricht behält den Preis, der beim Senden galt, und parallele Sitzungen zählen bei der Arbeitszeit nur einmal. Läuft ohne Build-Schritt mit zwei Laufzeit-Abhängigkeiten, unter tracker.celox.io auch mit GitHub-Login für mehrere Nutzer.

  • Drei Anbieter in einem Dashboard: Claude Code, Codex und Antigravity, umschaltbar per Filter
  • Nutzungslimits mit Hochrechnung: im Plan, voraussichtlicher Stand beim Reset oder Zeitpunkt, an dem das Limit leer ist
  • 45 Diagramme, darunter Nutzungs-Heatmap, Modell-Mix, Cache-Effizienz und Kosten je Werkzeug und MCP-Server
  • Projektberichte als HTML und PDF mit Methodik-Abschnitt, Share-API für Einblicke von Kunden
  • 1.224 Achievements in 14 Kategorien, mit Fortschrittsbalken und Filter „Fast geschafft“
Tests
830
Anbieter
3
Achievements
1.224
Release vom 08.10.2026
v0.10.1
  • Node.js
  • Vanilla JS
  • SQLite
  • Chart.js
  • SSE

Prompt-Queue für Claude Code, selbst gehostet

1 1

Geplante Prompts sammeln, ordnen und ausführen

cue: Kanban-Board mit den Spalten Queued, Running und Done, Projektfiltern und Prompt-Karten
cue: Detail-Dialog eines Prompts mit Statusleiste, Kopieren-Knopf, Inhalt und Aktionen
cue: Snippet-Bibliothek mit Gruppen, Versionsnummern und Import aus Inspector Rust
cue auf dem Smartphone: Filter-Chips und Prompt-Karten der Queue-Spalte

Ein Kanban-Board für alles, was Claude Code als Nächstes tun soll: Prompts nach Projekt gruppieren, priorisieren, blockieren, zusammenführen und mit einem Klick in die CLI kopieren, oder direkt als Run über die Claude-Code-CLI ausführen, einzeln oder als Playbook. Ein Hook protokolliert jeden in der CLI eingegebenen Prompt zurück ins Board. Mehrere Nutzer mit Google-Login, Abgleich zwischen Geräten in unter einer Sekunde, als PWA installierbar.

  • Board und Liste mit Drag-and-drop, auf dem Telefon per Long-Press; Dialoge als Bottom-Sheets, die die Tastatur nicht verdeckt
  • Runs: gespeicherte Prompts headless über die Claude-Code-CLI ausführen, einzeln oder als Playbook in Board-Reihenfolge
  • KI-Optimierung schreibt einen Prompt um und legt die Fassung neben das Original, das immer erhalten bleibt
  • Snippet-Bibliothek mit Roundtrip zu Inspector Rust, Tag-Vervollständigung aus 1.100 kuratierten Begriffen, Diktat
  • Signierte HttpOnly-Sessions, CSRF-Schutz und strikte CSP; Demo ohne Anmeldung unter cue.celox.io/demo
Tests
1.635
Backend-Coverage
96 %
Zeilen Code
39k
Release vom 03.09.2026
v0.62.0
  • Python
  • FastAPI
  • React 18
  • TypeScript
  • SQLite

Dart-Zählsystem für Handy, Laptop und Fernseher, stateofthedart.com

3 0

Summe tippen, Enter, und der Nächste ist dran

State of the Dart: Spielansicht mit großer Karte für Ben am Zug, Rest 141 und Checkout-Weg T20 T19 D12, daneben Eingabe per Numpad und das Dartboard, darunter Chris und Anna als kompakte Zeilen und die Match-Statistik
State of the Dart: Startseite mit Revanche-Karte für Anna, Ben und Chris, Knopf zum Fortsetzen eines pausierten Spiels und den weiteren Modi Cricket, Around the Clock, Shanghai, Training, Turniere und Online-Multiplayer
State of the Dart: TV-Scoreboard auf dem zweiten Bildschirm mit riesigem Rest 141 für Ben, Checkout-Weg und rechts der Live-Rangliste aller drei Spieler
State of the Dart: Achievement-Übersicht mit 32 von 463 freigeschalteten Erfolgen, Punktestand, Kategorie-Filtern und Karten wie Erste Schritte, Rookie und Veteran

Übernimmt am Board das Rechnen: X01 bis 1001 mit Check-in und Check-out Single, Double oder Triple, Sätzen und Legs, dazu Cricket, Around the Clock, Shanghai und sechs Trainingsmodi. Wer am Zug ist, bekommt die große Karte mit Rest, Checkout-Weg und Platz im Leg, und ein Fernseher zeigt den Spielstand als TV-Scoreboard live mit. Bis zu acht Spieler im schnellen Match, Bots in zehn Stärken, ein Glücksrad mit echter Physik für den Anwurf. Jeder Wurf landet in der Statistik mit feldgenauen Heatmaps; als PWA installierbar, offline spielbar und über das eigene Konto synchron, ohne Werbung.

  • Spotlight-Spielansicht: große Karte für den Spieler am Zug, Eingabe als Summe, einzelne Darts, Schnellwerte oder per Dartboard, Korrektur über Leg- und Satzgrenzen
  • TV-Scoreboard auf dem zweiten Bildschirm, live bei jeder Aufnahme, mit eigenem Moment für die 180
  • Für jede Bildschirmgröße: Eingabe im Daumenbereich am Handy, zwei Spalten am Tablet, drei mit Dartboard am Laptop
  • 463 Achievements in fünf Stufen, Statistik mit Heatmaps, Verlauf, Vergleich und Bestenlisten
  • Turniere, Online-Multiplayer per WebSocket, Caller mit 609 Sprachdateien, Deutsch und Englisch, WCAG 2.1 AA geprüft
Unit-Tests
1.323
Achievements
463
Spieler im Match
8
Release vom 26.10.2026
v0.45.0
  • React 19
  • TypeScript
  • Tailwind
  • Framer Motion
  • Express
  • SQLite
  • Socket.IO

KI-Rezepte und Cocktails als PWA, zauberkoch.de

1 0

Das Rezept entsteht live, Zutat für Zutat

Zauberkoch während der Generierung: Zutaten kreisen als Emojis um den Kessel, darunter baut sich das Rezept „Ossobuco alla Milanese mit Safran-Risotto" auf
Zauberkoch-Wizard: Art des Gerichts und Länderküche als Chips, Koch- und Drinks-Umschalter
Zauberkoch-Rezeptansicht: Beschreibung, Zeiten, Schwierigkeit und Zutatenliste mit Portionen-Stepper
Zauberkoch im Koch-Modus: Schritt 2 von 7 im Vollbild mit Timer „4:00" und Weiter-Knopf

Küche, Geschmack und Vorräte wählen, dann schreibt Claude ein Rezept auf Kochbuch-Niveau. Ein inkrementeller JSON-Parser über dem Token-Strom schickt jede fertige Zutat sofort als Event an den Browser, wo sie um einen Kessel kreist und hineinfällt, statt dass die Seite zwanzig Sekunden auf die schließende Klammer wartet. Koch-Modus mit Sprachsteuerung, Wochenplan, zusammengeführte Einkaufsliste. Generation-Cache, Dedup und Prompt-Caching halten die Kosten bei drei bis vier Cent je Rezept.

  • Live-Streaming über semantische SSE-Events: Titel, Zutaten, Schritte und Tipps erscheinen, sobald sie fertig sind
  • Koch- und Drinks-Modus mit Farbschema-Morph, Kühlschrank-Scan per Foto, Zutaten-Ersatz per Mini-KI-Aufruf
  • Koch-Modus im Vollbild mit einem Schritt je Screen, Timern, Wake Lock und Sprachbefehlen
  • Wochenplaner und Einkaufsliste, die Mengen mehrerer Rezepte mit normalisierten Einheiten zusammenführt
  • Google-Login oder E-Mail, eigener Anthropic-Schlüssel optional (AES-256-GCM), Datenexport und Löschung in der App
Tests + 42 E2E
661
Backend-Coverage
99 %
Lighthouse
99/100
Release vom 11.07.2026
v1.1.0
  • Python 3.12
  • FastAPI
  • Claude API
  • React 19
  • TypeScript

Android-App für Video-Downloads, Android 7 und neuer

5 2

Teilen-Knopf drücken, Video behalten

Flipper the Ripper: Startbildschirm im dunklen Theme mit gezeichneter Wortmarke, dem Hinweis auf YouTube, Instagram, TikTok, Facebook, X und Dailymotion, dem Feld für den Videolink und den Knöpfen zum Auslesen und Laden
Flipper the Ripper: Einstellungen mit dem Knopf zum Nachladen des Extraktors, darunter der Über-Bereich mit Version, Quellcode-Verweis und Lizenz sowie die Rückmeldung, dass yt-dlp bereits aktuell ist
Flipper the Ripper: Downloadliste mit einem geladenen Video samt Vorschaubild, Plattform und Größe, darüber der Rückfrage-Dialog vor dem Löschen des Verlaufs
Flipper the Ripper: derselbe Startbildschirm im hellen Theme mit dynamischen Material-You-Farben

Ein öffentlich erreichbares Video aus YouTube, Instagram, TikTok, Facebook, X oder Dailymotion per Teilen-Menü an die App geben, den Rest erledigt sie: Plattform erkennen, Metadaten auflösen, im Hintergrund laden, unter dem Videotitel in den Movies-Ordner speichern. Die Extraktion übernimmt ein gebündeltes yt-dlp samt ffmpeg, das sich selbst aktualisiert, weil Plattformen alte Extraktoren binnen Monaten aushebeln. Keine DRM-Umgehung, keine Paywalls, bewusst nicht im Play Store: signierte APKs je Architektur über GitHub Releases.

  • Teilen-Integration und Zwischenablage-Erkennung: Link rein, ein Tipp, fertig
  • Echte Hintergrund-Downloads über WorkManager und Vordergrund-Dienst, auch bei gesperrtem Bildschirm
  • Optionale Instagram-Anmeldung auf Instagrams eigener Seite, das Passwort berührt die App nie
  • Nur-Audio-Modus für YouTube als M4A, sprechende Fehlermeldungen von „privat" bis „regional gesperrt"
  • Material 3 Expressive mit Spring-Physik und Shape-Morphing, dynamische Farben, hell und dunkel
Unit-Tests
386
Coverage (CI-Pflicht)
≥ 80 %
Plattformen
6
Release vom 08.09.2026
v1.7.0
  • Kotlin 2.0
  • Jetpack Compose
  • Material 3 Expressive
  • Hilt
  • Room
  • yt-dlp

Quick-Look-Erweiterung für macOS

3 0

Leertaste im Finder, und JSON, Markdown, Logs und Code sind lesbar

Loupe-Vorschau einer package.json als aufklappbarer Baum: Schlüssel in Originalreihenfolge, eingeklappte Knoten zeigen die Zahl ihrer Schlüssel und die ersten Namen, Werte nach Typ eingefärbt
Loupe-Vorschau einer Markdown-Datei „Release Notes · Storefront 4.12": Hinweiskasten, Aufzählung mit Code und Link, Aufgabenliste mit Häkchen und eine Tabelle mit Vorher-nachher-Werten
Loupe-Vorschau einer server.log in Spalten für Zeit, Stufe, Quelle und Nachricht; Fehlerzeilen rot hinterlegt, der Stacktrace bleibt zusammen, oben Zähler für Fatal, Error und Warn
Loupe-Vorschau einer Swift-Datei mit Zeilennummern, Sprachkennzeichen und farbig ausgezeichneten Schlüsselwörtern, Typen und Kommentaren
Ohne Loupe und mit Loupe Video · 77 s

Zehn Dateien, je zuerst so, wie macOS sie von sich aus zeigt, dann mit Loupe. Die Loupe-Seite ist die echte Ausgabe der Renderer; Finder und die Seite ohne Loupe sind nachgebaut.

macOS zeigt die meisten Entwicklerdateien in der Vorschau als graue Wand aus Rohtext oder gar nicht. Loupe hängt sich als Quick-Look-Erweiterung in den Finder: Leertaste, und JSON erscheint als aufklappbarer Baum, Markdown gesetzt, Logdateien in Spalten mit markierten Fehlern und Quelltext farbig ausgezeichnet in 35 Sprachen. Gerendert wird nativ in Swift, ohne eine Zeile JavaScript im Vorschaufenster. Die Erweiterung läuft in der App-Sandbox, liest nur, arbeitet vollständig offline und sendet keine Telemetrie.

  • JSON als Baum in Originalreihenfolge, mit Anzahl und Typfarben; defekte Dateien zeigen alles bis zum Fehler und markieren die Stelle
  • Logdateien in Spalten für Zeit, Stufe, Quelle und Nachricht, Fehler eingefärbt, Stacktraces zusammengehalten; sieben Logformate erkannt
  • Markdown nach CommonMark und GitHub Flavored Markdown: Tabellen, Aufgabenlisten, hervorgehobener Code, lokale Bilder
  • Syntaxhervorhebung für 35 Sprachen, darunter PowerShell und Batch, die macOS nicht einmal als Dateitypen kennt; dazu XML, TSV und Rhythmusspiel-Charts
  • Schnell: eine 5-MB-JSON-Datei steht in 162 ms, ein 4-MB-Log in 338 ms
  • Abgedichtet: App-Sandbox, nur Lesezugriff, strikte Content Security Policy, kein Netzwerk, hell und dunkel folgen dem System
Tests
389
Zeilen Swift
6.673
Sprachen
35
Release vom 28.09.2026
v0.8.0
  • Swift 6
  • AppKit
  • Quick Look
  • SwiftPM

Server-Dashboard fürs Terminal, Linux, macOS und Windows

3 0

Ein Blick ins Terminal statt fünf Werkzeuge

termstats im Demo-Modus, 140 mal 42 Zeichen: acht CPU-Balken in der Farbrampe kühl bis heiß mit Spitzenmarken, RAM mit Cache-Anteil, Swap, Netzwerk, zwei Platten, Braille-Flächencharts für CPU-Last und Netzwerk der letzten 30 Sekunden, darunter die Prozessliste
Die sechs termstats-Themes nebeneinander: default, mono, nord, gruvbox, catppuccin-mocha und viridis, jedes mit eigener Farbrampe und eigenem Hintergrund
termstats in einem 80 mal 24 Zeichen kleinen Terminal: CPU, Speicher und Netzwerk einspaltig, Platten, Charts und Prozesse ganz weggelassen statt gequetscht
termstats mit der Option für den Equalizer: 28 logarithmisch verteilte Frequenzbänder von 40 Hz bis 16 kHz als Balken, nach Höhe auf der Farbrampe eingefärbt, über jedem Balken eine Peak-Hold-Marke, darunter die Frequenzachse und eine Zeile mit Beat-Punkt, Tempo, Pegel und Konfidenz
termstats als Pegelmesser: der aktuelle Wert fünf Zeilen hoch und mittig aus Balkenzeichen gesetzt, darunter Einheit und geglätteter Wert, ein Balken mit Spitzenmarke, das Minimum und Maximum der Sitzung sowie der Pegelverlauf der letzten Sekunden als Flächenchart
termstats als Tempoerkennung: die erkannten Schläge pro Minute fünf Zeilen hoch und mittig, daneben Schläge pro Sekunde und Gesamtzahl, darunter Balken für Konfidenz und Bassband sowie der Tempoverlauf

CPU je Kern, RAM mit Cache-Anteil, Swap, jede echte Partition, Netzwerk-Durchsatz und die hungrigsten Prozesse auf einem Bildschirm, mit Braille-Flächencharts für die letzten 30 Sekunden und einer Sparkline in der Kopfzeile. Alles teilt eine Farbrampe von kühl über warm bis heiß, jede Zelle eines Balkens ist nach ihrer Position gefärbt. Das Layout kennt die Höhe des Terminals und zeichnet nichts ins Leere. Live per Default, Momentaufnahme sobald die Ausgabe in eine Datei oder Pipe geht, keine Konfiguration. Seit Version 0.5.0 hört dasselbe Werkzeug auf Wunsch auch zu: Equalizer, Tempo-Erkennung und Pegelmesser aus dem Mikrofon, im selben Bild und ohne dass etwas aufgezeichnet wird.

  • Höhenbewusstes Layout: eine Spalte auf 80 Zeichen, mehrspaltig mit Charts, wenn Platz ist
  • Braille-Flächencharts für CPU und Netz mit Zeitachse und Live-Werten im Titel, ASCII-Rückfall ohne Unicode
  • Echte Mountpoints statt Pseudo-Dateisysteme, auf dem Mac das Data-Volume statt neun APFS-Partitionen
  • Modus folgt dem Kontext: Terminal = live, Pipe oder Cron = eine Momentaufnahme, Unbekanntes ist ein Fehler, kein stiller Rückfall
  • Mikrofon-Modi: 28-Band-Equalizer von 40 Hz bis 16 kHz mit Peak-Hold, Tempo-Erkennung mit Beat-Punkt und Pegelmesser in dBFS, Eingang wählbar über eine gerenderte Geräteliste — optionales Zusatzpaket, nichts wird aufgezeichnet
  • Sechs Farbthemen von default bis viridis: jede Rampe monoton in OKLab, jeder Textton gegen den Hintergrund kontrastgeprüft
  • Demo-Modus: eine geskriptete Maschine mit Netz-Burst, CPU-Spitze und volllaufender Platte, damit Screenshots und Probeläufe reproduzierbar sind
  • Optionaler Health-Report als PDF per Mail mit Ampel-Bewertung, Schwellwerten und Docker-Containern
Tests
1.301
Plattformen
3
Konfiguration
0
Release vom 06.09.2026
v0.5.1
  • Python 3.9+
  • rich
  • plotext
  • psutil

Musikspiel für die Runde, mxtape.celox.io

2 0

Song hören, Jahr raten, an die richtige Stelle der Zeitleiste legen

mxtape im Spiel: die Schallplatte zeigt Albumcover und Jahr 1983, rechts die Zeitleiste von Martin mit der richtig gelegten Karte „Sweet Dreams“, unten „Richtig platziert!“ mit einem Fakt zum Song
mxtape: Lea ist dran, die verdeckte Karte „Dove c’è musica“ liegt unten bereit, die Zeitleiste zeigt gestrichelte Lücken vor, zwischen und nach den bisherigen Jahren
mxtape, neues Spiel: die drei Modi eigene Zeitleiste, gemeinsame Zeitleiste und Hardcore, darunter die Mitspielenden
mxtape auf dem Smartphone: kompakte Spielerleiste mit Plattenspieler, Zeitleiste mit Lücken und unten die verdeckte Karte zum Hineinziehen

Ein Song läuft an, und wer dran ist, legt die Karte an die Stelle der Zeitleiste, an die das Erscheinungsjahr gehört. Gespielt wird auf einem Handy, das herumgeht, oder jede Person auf dem eigenen Gerät: im selben Zimmer mit Musik nur vom Gastgeber oder verteilt über die Stadt, wo alle Geräte den Song gleichzeitig abspielen. Gäste kommen per Link, QR-Code oder Raumcode ohne Konto dazu. Drei Modi, Einsprüche, Teams ab vier Personen, ein Stechen statt Unentschieden und bis zu drei Bots für alle, die allein spielen. 300 Songs von den 50ern bis heute liegen selbst gehostet bereit; nach dem Aufdecken zeigt die Platte das Albumcover, dazu kommt ein kurzer Hintergrund-Fakt zum Song. Bis Oktober 2026 hieß das Projekt mxster.

  • Drei Modi: eigene Zeitleiste, gemeinsame Zeitleiste und Hardcore (bis 15 Punkte je Song)
  • Mehrspieler-Räume für bis zu zehn Geräte, Gäste ohne Konto, Freunde suchen und direkt einladen
  • Runde nach Wunsch: kurz, normal oder lang, nur bestimmte Jahrzehnte, Exoten, Einspruch und Teams
  • Statistik mit Jahrzehnt-Profil im Vergleich, 24 Erfolge und Verlauf jeder Runde, am Konto auf jedem Gerät gleich
  • Deutsch und Englisch, Google-Login mit Freischaltung; Material 3 Expressive mit einer Schallplatte als Herzstück, installierbare PWA
Songs
300
Geräte je Raum
10
Spielmodi
3
Release vom 27.10.2026
v0.9.0
  • React 19
  • TypeScript
  • Vite
  • Tailwind
  • FastAPI
  • SQLite
  • WebSocket

Chrome-Erweiterung für die Kontaktaufnahme auf LinkedIn

2 0

Kontaktanfragen mit Deckel, Protokoll und Bremse

Das Popup der Erweiterung hängt rechts unter der Browserleiste: Schalter für die automatische Kontaktaufnahme, Wochenkontingent mit Fortschrittsbalken, Verlaufsdiagramm mit Zeitraum-Auswahl, Kennzahlen für gesendete Anfragen und gespeicherte Kontakte sowie Knöpfe für Ausgabe, Bericht und Sicherung
Die Einstellungsseite mit drei Karten: Anbindung an das ops-System mit Adresse und Zugangsschlüssel, ein Schalter für die automatische Übertragung und die Tempo-Bremsen mit zufälligem Abstand, Obergrenzen je Stunde und Tag sowie einem Stopp bei einem Anteil der Wochenmenge
Der ausgegebene HTML-Bericht: Wochenkontingent als Balken, Verlaufsdiagramm über dreißig Tage, eine Aufstellung der Treffer je Suchbegriff und darunter die Kontakttabelle mit Datum, Name, Position, Firma, Ort und Sendeweg

Die Erweiterung durchsucht LinkedIn-Trefferlisten nach dem Vernetzen-Knopf und verschickt Kontaktanfragen in einem gedeckelten Takt. Jede gesendete Anfrage landet mit Name, Firma, Ort und dem Suchbegriff im lokalen Protokoll, das sich als CSV oder als eigenständiger HTML-Report ausgeben lässt. Tempo-Deckel pro Stunde und Tag, ein zufälliger Abstand statt eines festen Takts und ein Stopp bei einem frei gewählten Anteil des Wochenkontingents halten den Lauf im Rahmen; wer einmal im Protokoll steht, wird nie erneut angefragt. Automatisiertes Versenden von Kontaktanfragen verstößt gegen LinkedIns Nutzungsbedingungen — das Projekt sagt das in der eigenen Dokumentation und legt die Bremsen entsprechend eng.

  • Selbstheilung gegen Oberflächen- und API-Änderungen: schlägt der direkte Weg fehl, übernimmt ein Klick-Ersatz und kalibriert die Erkennung aus dem echten Vorgang neu
  • Tempo-Bremsen: zufälliger Abstand statt festem Takt, Obergrenzen je Stunde und Tag, Stopp bei X Prozent der Wochenmenge — der Lauf pausiert und setzt von selbst fort
  • Kontaktprotokoll mit Suchbegriff und Ort, dauerhafte Duplikatsperre über Sitzungen hinweg, Strichliste je Begriff und Stadt
  • Ausgabe als CSV für die Tabellenkalkulation oder als eigenständiger HTML-Report mit Verlauf, Kontingent und Kontakttabelle, ohne eine einzige externe Datei
  • Sperrliste aus dem eigenen ops-System: abgesagte, ruhende und gewonnene Kontakte sowie Bestandskunden werden auf der Trefferseite übersprungen
  • Erkennung in sieben Oberflächensprachen über Beschriftung, Text oder Verweis — unabhängig davon, in welcher Sprache LinkedIn gerade läuft
  • Keine Telemetrie, kein Aufruf nach Hause: das Backup entfernt Sitzungs-Kopfzeilen, Tabellenzellen sind gegen Formel-Einschleusung geschützt, der Report lädt nichts nach
Tests
605
Sprachen
7
Telemetrie
0
Release vom 06.09.2026
v2.15.0
  • JavaScript
  • Chrome MV3
  • Vitest

Tests, Codezeilen, Coverage, Version, Sterne und Forks aktualisieren sich täglich aus den Repositories; übrige Angaben: Stand September 2026.

Alle 134 Repositories auf GitHub

Open Source, Side Projects und mehr — alles auf einen Blick.

GitHub-Profil ansehen

Solche Werkzeuge — für Ihre Abläufe

Alles hier läuft echt, im Dauerbetrieb. Dasselbe Handwerk baut die Automations-Werkzeuge, die in Ihrem Unternehmen Abtippen und Übertragen ersetzen — lokal, mit Datenschutz-Doku.