TL;DR
Diese Woche habe ich angefangen, eine eigene Task-App zu bauen, die irgendwo zwischen Kalender und Wecker liegt. Der Kern funktioniert bereits: Aufgaben lassen sich anlegen, als erledigt markieren und zur richtigen Zeit als Desktop-Popup anzeigen. Der wichtigste Unterschied zu klassischen Erinnerungen ist die gezielte Anzeige auf einem auswählbaren Monitor, damit im Meeting oder beim Screen-Sharing nicht plötzlich die falsche Erinnerung für alle sichtbar wird. Der nächste Schritt ist jetzt der Telegram-Fallback für Momente, in denen der PC nicht erreichbar ist, plus ein schöneres Design.
Kontext & Ziel
Der Auslöser für dieses Projekt war ziemlich einfach: Ich wollte im Arbeitsalltag an Aufgaben erinnert werden und diese Erinnerungen snoozen können. Normale Kalender- oder Reminder-Tools können zwar Benachrichtigungen anzeigen, aber sie lösen nicht das eigentliche Problem. Wenn ich mit mehreren Monitoren arbeite, möchte ich selbst festlegen können, wo eine Erinnerung erscheint. Gerade in Meetings oder beim Teilen des Bildschirms ist das wichtig.
Dazu kam ein zweiter Punkt: Eine Erinnerung bringt wenig, wenn der Rechner gerade aus ist oder der Client nicht läuft. Genau deshalb ist die App von Anfang an als Kombination aus Desktop-Erinnerung und mobilem Fallback gedacht. Wenn der Rechner aus ist, wird einfach eine Telegram-Nachricht versendet.
Das Wochenziel waren die Grundfunktionalitäten zu schaffen. Ich wollte Aufgaben anlegen können, Wiederholungen berücksichtigen, Erinnerungen sichtbar machen und erste Entscheidungen für den weiteren Ausbau treffen. Das ist wichtig, weil solche kleinen Produktivitäts-Tools schnell chaotisch werden, wenn Logik, Anzeige und Zustände nicht früh ordentlich getrennt sind.
Meine Anforderungen
- Ich möchte Aufgaben anlegen können, die mich einmalig oder regelmäßig erinnern.
- Ich möchte eine Desktop-Benachrichtigung sehen, auf die ich direkt reagieren kann, zum Beispiel mit Snooze oder Erledigt.
- Ich möchte auswählen können, auf welchem Monitor diese Benachrichtigung erscheint.
- Ich möchte auch dann erinnert werden, wenn mein PC gerade nicht erreichbar ist, in diesem Fall per Telegram ans Handy.
- Ich möchte Aufgaben nicht hart löschen, sondern später wiederfinden oder reaktivieren können.
- Ich wollte bei dem Projekt außerdem bewusst eine Electron-App bauen, weil ich diese Art Anwendung bisher noch nicht umgesetzt hatte.
Mein AI-Workflow
Die App habe ich bisher vollständig mit Claude Code entwickelt. Ich bin wie zuletzt erst über die Planung gegangen, habe danach eine HTML-Dokumentation erzeugt und bin dann in einem frischen Chat in die eigentliche Umsetzung gestartet. Das Bild für den Blogpost wurde mit ChatGPT generiert. Die Bildgenerierung von ChatGPT ist neuerdings SEHR gut!
Was das Tool kann
👉 Ich kann neue Aufgaben mit Titel, optionaler Beschreibung, Uhrzeit und Wiederholungsmodus anlegen.
👉 Ich kann Aufgaben für einmalige, tägliche, wöchentliche oder monatliche Erinnerungen vorbereiten.
👉 Wenn eine Aufgabe fällig ist, erscheint auf dem ausgewählten Monitor ein eigenes Reminder-Popup statt nur eines unauffälligen Standard-Hinweises 🔔
👉 Direkt in dieser Benachrichtigung kann ich die Aufgabe erledigen oder für eine spätere Erinnerung snoozen.
👉 Wenn ich nicht reagiere, plant die App automatisch eine erneute Erinnerung ein, statt die Aufgabe einfach still verschwinden zu lassen.
👉 Bereits erledigte oder nicht mehr benötigte Aufgaben werden archiviert und nicht endgültig gelöscht.
👉 Der geplante nächste Schritt ist, dass dieselbe Aufgabe per Telegram aufs Handy geht, sobald der PC offline ist.
Stack & Tools
Frontend: Electron, React, TailwindCSS
Backend: Node.js, Fastify, TypeScript
Daten: SQLite
Kommunikation: WebSockets für Heartbeat und Reminder-Push
Deployment: Docker Compose, Traefik
Herausforderungen & Learnings
- Die größte technische Umstellung war für mich, überhaupt zum ersten Mal eine Electron-App zu bauen. Gerade bei Desktop-Themen wie Tray-Verhalten, Popup-Fenstern und mehreren Fenstern in einem Prozess merkt man schnell, dass man nicht mehr in einer normalen Web-App unterwegs ist.
- Eine wichtige Architekturentscheidung war, die Erinnerung nicht als In-App-Element zu bauen, sondern als eigenes Fenster. Nur so lässt sich das Popup gezielt auf einem bestimmten Monitor platzieren und wirklich unabhängig vom Hauptfenster anzeigen.
- Claude Code hat sich dieses Mal nicht nur fürs Schreiben, sondern auch fürs Testen interessant angefühlt. Statt nur selbst herumzuklicken, habe ich das Tool von Claude starten lassen, Testfälle formulieren lassen und dann sehr gezielt Rückmeldung gegeben, was beim Klicken tatsächlich passiert. Das war überraschend angenehm 😅
- Gleichzeitig gab es Reibung durch Änderungen rund um Claude Code selbst, weil meine Tokens schneller aufgebraucht waren als erwartet. Das hat den Flow zwischendurch gebremst und erinnert daran, dass bei KI-gestützter Entwicklung nicht nur der eigene Code, sondern auch das Tooling ein Risiko sein kann.
- Inhaltlich war für mich außerdem wichtig, schon jetzt die Offline-Logik mitzudenken. Auch wenn der Telegram-Fallback diese Woche noch nicht fertig geworden ist, beeinflusst genau diese Anforderung bereits die Struktur von Scheduler, Statusprüfung und Ereignisverlauf.
Keine Live-Demo
Keine Live-Demo. Die App ist ein persönliches Desktop-Tool, aktuell noch nicht fertig verpackt und der mobile Telegram-Fallback fehlt im Stand dieser Woche noch.
Fazit
Woche 31: ✅
Ich bin mit dem Zwischenstand zufrieden, weil der Kern des Problems bereits gelöst ist: Aufgaben lassen sich anlegen und Erinnerungen erscheinen genau dort, wo sie im Alltag sinnvoll sind.
Gleichzeitig ist das Projekt noch nicht fertig. Das Design gefällt mir noch nicht wirklich, und der Telegram-Fallback ist für den eigentlichen Nutzen unterwegs fast genauso wichtig wie die Desktop-Seite. Nächster sinnvoller Schritt ist also, diese beiden Punkte noch zu verbessern. 🙂

