← StartHome
Simon Gutjahr

Hi, ich bin Simon.Hi, I'm Simon.

Hobby-Entwickler aus Karlsruhe – ich baue Dinge für mein Handgelenk und meine Freund*innen.

Hobby developer from Karlsruhe, Germany – building things for my wrist and my friends.

Ich bin 28 Jahre alt und arbeite in IT und E-Mobilität, vor allem in Fehlerüberwachung und Operations. In meiner Freizeit programmiere ich – meistens kleine Projekte, die ein Problem lösen, das ich selbst habe.

I'm 28 years old and work in IT and e-mobility, mainly in fault monitoring and operations. In my spare time I write code – mostly small projects that solve a problem I actually have.

Ich mag agentisches Programmieren: Ich arbeite mit KI-Coding-Agenten, beschreibe, was ich will, prüfe und teste das Ergebnis und verbessere es, bis es passt. So sind die meisten Projekte unten entstanden.

I love agentic coding: I work together with AI coding agents, describe what I want, review and test the result and iterate until it's right. That's how most of the projects below came to life.

Als Diabetiker habe ich meine Live-Glukosewerte gern direkt am Handgelenk – ein großer Teil meiner Projekte sind deshalb Pebble-Watchfaces, die Live-Glukosewerte aus Nightscout anzeigen. Außerdem baue ich Browser-Spiele für Abende mit Freund*innen und ein paar praktische Tools.

As a diabetic I like having my glucose level right on my wrist, so a big part of my projects are Pebble watchfaces that show live glucose values from Nightscout. Besides that I build browser games to play with friends and a few handy tools.

Mein eigener Alltag mit Insulinpumpe und Sensor: Werte dort sehen, wo ich sie brauche – auf dem iPhone und am Handgelenk. Kein Medizinprodukt.My own life with an insulin pump and sensor: seeing values where I need them – on the iPhone and on my wrist. Not a medical device.

iPump-mini

  • Diabetes & CGMDiabetes & CGM
  • iOSiOS
  • AppApp

iPhone-App · Swift, SwiftUI, Bluetooth LE · Open Source (GPL-3.0) · Deutsch/EnglishiPhone app · Swift, SwiftUI, Bluetooth LE · open source (GPL-3.0) · German/English

Ich trage eine MiniMed-780G-Insulinpumpe. Ihre Daten landen sonst nur in der Hersteller-Cloud – also liest meine App die Pumpe direkt per Bluetooth aus, strikt nur lesend: Sensorwert mit Trend, aktives Insulin, Reservoir, SmartGuard-Status und die Pumpenhistorie. Dazu Alarme, Widgets und die Dynamic Island; optional Nightscout und eine lokale Schnittstelle für Uhren. Kein Medizinprodukt.

I wear a MiniMed 780G insulin pump. Its data otherwise only goes to the manufacturer’s cloud – so my app reads the pump directly over Bluetooth, strictly read-only: sensor glucose with trend, active insulin, reservoir, SmartGuard state and the pump history. Plus alarms, widgets and the Dynamic Island; optionally Nightscout and a local API for watches. Not a medical device.

Nightscout SuperCGM

  • Diabetes & CGMDiabetes & CGM
  • PebblePebble

Watchface · C / JavaScript

Ein bestehendes Watchface im 14-Segment-Stil, angepasst für meinen Live-Glukosewert mit Trendpfeil, Delta und akkuschonender Synchronisierung, die lernt, wann der Uploader neue Werte schickt. Datenquelle: Nightscout oder iPump-mini (direkt von der MiniMed 780G, ohne Internet).

An existing 14-segment style watchface, adapted to show my glucose value with trend arrow, delta and a battery-friendly sync that learns when your uploader sends new readings. Data source: Nightscout or iPump-mini (straight from the MiniMed 780G, no internet needed).

CasioCGM

  • Diabetes & CGMDiabetes & CGM
  • PebblePebble

Watchface · C / JavaScript

Ein Casio-Design nach dem Vorbild einer echten Casio-Uhr, angepasst für die Pebble Time 2 – mit dem aktuellen CGM-Wert in der fünfstelligen Anzeige. Datenquelle: Nightscout oder iPump-mini (direkt von der MiniMed 780G, ohne Internet).

A Casio-style design modelled on a real Casio watch, adapted for the Pebble Time 2 – with the current CGM value hidden in the five-digit complication. Data source: Nightscout or iPump-mini (straight from the MiniMed 780G, no internet needed).

91 Dub CGM

  • Diabetes & CGMDiabetes & CGM
  • PebblePebble

Watchface · C / JavaScript

Ein Fork des beliebten 91 Dub: CGM-Anzeige, Wetter, Gesundheitsdaten und die RGB-Beleuchtung der Pebble Time 2, einstellbar auf Deutsch und Englisch. Datenquelle: Nightscout oder iPump-mini (direkt von der MiniMed 780G, ohne Internet).

A fork of the beloved 91 Dub: CGM complication, weather, health data and the RGB backlight of the Pebble Time 2, configurable in English and German. Data source: Nightscout or iPump-mini (straight from the MiniMed 780G, no internet needed).

pebble-cgm

  • Diabetes & CGMDiabetes & CGM
  • PebblePebble

Bibliothek · JavaScript / C · Open Source (MIT)Library · JavaScript / C · open source (MIT)

Die gemeinsame CGM-Logik meiner Watchfaces als eigene Bibliothek: Nightscout oder iPump-mini als Quelle, akkuschonende Synchronisierung, Fallback und der letzte Wert nach jedem Neustart. Frei nutzbar für alle, die eigene CGM-Watchfaces bauen.

The shared CGM logic of my watch faces as a library: Nightscout or iPump-mini as source, battery-friendly sync, fallback and the last value after every restart. Free to use for anyone building their own CGM watch face.

Die Watchface-Designs stammen von anderen Designer*innen – mein Teil ist die Anpassung für Live-CGM-Daten.The watchface designs are based on existing faces by other designers – my part is adapting them for live CGM data.

Für Abende mit Freund*innen: ein kooperatives Kartenspiel als App, ein Spielautomat, der Münzschieber fürs Quiz und Bingo-Karten zum Drucken.For evenings with friends: a cooperative card game as an app, a slot machine, the counter pusher for quiz night and printable bingo cards.

Letzte Runde

  • SpieleGames
  • WebWeb
  • AppApp

Browser-Spiel + App (Android + iOS) · Node.js, ohne AbhängigkeitenBrowser game + app (Android + iOS) · Node.js, no dependencies

Ein kooperatives Poker-Kartenspiel nach dem Vorbild von „The Gang“: Räume mit Freund*innen, Bots, Lernmodus, Sprachchat und Offline-Einzelspiel. Die App hostet Spiele auch im WLAN ohne Internet.

A cooperative poker card game inspired by “The Gang”: rooms with friends, bots, a learning mode, voice chat and offline single player. The app can also host games over local Wi-Fi without internet.

Einarmiger BanditOne-armed Bandit

  • SpieleGames
  • WebWeb

Browser-Spiel · JavaScriptBrowser game · JavaScript

Ein Spielautomat für den Casino-Abend mit Freund*innen: bis zu acht Spieler*innen, verschiedene Einsätze, einstellbare Gewinnchancen und Auszahlungstabelle.

A slot machine for a casino night with friends: up to eight players, different stakes, adjustable odds and a payout table.

Tipping-Point-AutomatTipping Point Machine

  • SpieleGames
  • WebWeb

Browser-Spiel · HTML-Canvas, JavaScriptBrowser game · HTML canvas, JavaScript

Der Münzschieber aus der britischen TV-Quizshow „Tipping Point“. Wir nutzen ihn beim Quiz mit Freund*innen: Zone wählen, Chips einwerfen und zusehen, wie sie schieben – wir stellen die Fragen, der Automat zählt mit. Mit Jackpot, Mystery-Chips und eigenen Sounds.

The counter pusher machine from the British TV quiz show “Tipping Point”. We use it when we play a quiz with friends: pick a zone, drop counters and watch them push – we ask the questions, the machine keeps count. With jackpot and mystery counters and custom sounds.

Bingo-KartengeneratorBingo Card Generator

  • ToolsTools
  • WebWeb

Web-Tool · JavaScriptWeb tool · JavaScript

Erstellt zufällige Bingo-Karten mit eigenem Zahlenbereich und Titel, sechs pro A4-Seite – fertig zum Drucken oder als PDF.

Creates random bingo cards with your own number range and title, six per A4 page – ready to print or save as PDF.

Mit KI gebaut, um alltägliche Probleme zu lösen.Built with AI to solve everyday problems.

bookshelv

  • ToolsTools
  • AppApp
  • WebWeb

Android-App · Web-App (PWA) · Node.js, SQLite, SvelteAndroid app · Web app (PWA) · Node.js, SQLite, Svelte

Meine Frau liest viel und war mit keiner Lese-App auf dem Markt zufrieden – also habe ich ihr eine gebaut. Eine selbst gehostete Bibliothek für unseren Freundeskreis: ISBN scannen, Lesestand festhalten, mit halben Sternen bewerten, Rezensionen kommentieren und den Überblick behalten, wer welches Buch ausgeliehen hat. Die App funktioniert auch ganz ohne Konto – dann bleibt die Bibliothek auf dem Handy. Ohne E-Mail, ohne Tracking – und alle können mit Docker eine eigene Instanz betreiben.

My wife reads a lot and wasn’t happy with any of the reading apps on the market – so I built her one. A self-hosted library for our circle of friends: scan a book’s ISBN, track what you’re reading, rate with half stars, comment on reviews and keep track of who borrowed which book. The app also works without any account – then your library stays on your phone. No e-mail, no tracking – and anyone can host their own instance with Docker.

Baden oder Württemberg?

  • ToolsTools
  • WebWeb

Website · JavaScript, PHP, SQLite, Python-DatenpipelineWebsite · JavaScript, PHP, SQLite, Python data pipeline

Badisch, württembergisch – oder doch hohenzollerisch? Ein Nachschlagewerk für über 14.000 Orte in Baden-Württemberg mit ihrer Zugehörigkeit vor 1945. Die Suche ist ein gelbes Ortsschild; dazu kommen eine Karte der alten Grenzen, Steckbriefe mit Einwohnerentwicklung und Wappen , eine Ortschronik für eigene Geschichten, ein Quiz und eine Seite für jede Gemeinde. Die Daten stammen aus OpenStreetMap und OpenHistoricalMap und sind gegen die Gemeindeverzeichnisse von 1945 geprüft – 99,7 % Übereinstimmung.

Baden, Württemberg – or Hohenzollern after all? A lookup for more than 14,000 places in Baden-Württemberg and the state they belonged to before 1945. You search on a yellow town sign; there is a map of the old borders, profiles with population history and coats of arms, a local chronicle for your own stories, a quiz and a page for every municipality. The data comes from OpenStreetMap and OpenHistoricalMap and is checked against the 1945 municipality registers – 99.7 % agreement.

WatchieTalkie2

  • PebblePebble

Pebble-App + Node.js-ServerPebble app + Node.js server

Ein Walkie-Talkie fürs Handgelenk: Kontakt wählen, Nachricht diktieren und senden – mit Sprache-zu-Text, Ende-zu-Ende-verschlüsselt, auf allen sieben Pebble-Plattformen.

A walkie-talkie for your wrist: pick a contact, dictate a message and send it – speech-to-text, end-to-end encrypted, on all seven Pebble platforms.

FILEfinDER

  • ToolsTools

Kommandozeilen-Tool · PythonCLI tool · Python

Durchsucht Ordner und Archive (ZIP, TAR.GZ, GZ) nach Text und zeigt jeden Treffer mit Kontext und Live-Fortschritt.

Searches directories and archives (ZIP, TAR.GZ, GZ) for text strings and prints every match with its context and live progress.