Rent Tracker
Rent Tracker ist eine Web-App zur Mietverwaltung, gebaut mit einem Teammitglied für ein Full-Stack-Modul an der HWR Berlin. Sie deckt die tägliche Verwaltung eines kleinen Vermieters ab — Wohnungen, Mieter, Verträge und Zahlungen je Monat — und ergänzt ein Erinnerungssystem, das berechnet, welche Mieten noch offen sind, und sie zu einem von jedem Nutzer selbst gewählten Zeitplan über Telegram oder E-Mail hinausschickt.
- Rolle
- Mitentwickler (2er-Team)
- Jahr
- 2025
- Status
- Abgeschlossen
- Kategorie
- Softwareentwicklung
- Werkzeuge & Technologien
- PythonFlaskJinja2SQLiteAPSchedulerpython-telegram-botSendGrid
- Links
- GitHubDocumentation
Das Problem
Kleine private Vermieter erfassen Miete in Tabellen oder im Kopf und verlieren den Überblick, welcher Mieter welchen Monat bezahlt hat. Rent Tracker zentralisiert diese Erfassung und verwandelt „Haben sie gezahlt?“ in eine automatische monatliche Erinnerung.
Kontext
Ein Modul „Full-Stack Web Development“ an der HWR Berlin, Sommersemester 2025 (das Projekt lief von April bis Juli 2025). Wir beide teilten die Arbeit ziemlich gleichmäßig über Routen, den Erinnerungsdienst und die Integrationen auf.
Prozess
Berechnen, was offen ist
Die Kernlogik kapselt die Erinnerungsberechnung in einem einzigen Dienst: Das Fenster unbezahlter Mieten wird über einen gleitenden Bereich von Monaten berechnet und gegen eine Menge bereits bezahlter (Wohnung, Monat)-Paare für schnelle Abfragen abgeglichen. Ein nächtlicher Job verteilt die Erinnerungen dann an die von jedem Nutzer gewählten Kanäle.
- CRUD für Wohnungen, Mieter, Verträge und Zahlungen, je Nutzer abgegrenzt
- Signierte, zeitlich begrenzte Tokens für E-Mail-Bestätigung und Passwort-Reset
- Erinnerungstag je Nutzer sowie Umschalter für die Kanäle Telegram/E-Mail
Zentrale Entscheidungen
Kanalunabhängige Erinnerungen
Die Zustellung wird durch Flags je Nutzer (use_email / use_telegram) und ein Erinnerungstag-Feld gesteuert, sodass derselbe nächtliche Job an einen oder beide Kanäle verteilen kann. Ein eigenständiger Telegram-Bot pollt eine token-authentifizierte JSON-API nach heute fälligen Nutzern.
Ergebnisse
- Eine funktionierende App mit zwei Integrationen (Telegram-Bot + SendGrid-E-Mail) auf einem Flask/SQLite-Stack ausgeliefert, mit Authentifizierung, E-Mail-Bestätigung und token-basiertem Passwort-Reset.
- Fristgerecht fertiggestellt und eingereicht, mit umfangreicher Dokumentation — Architektur, Datenmodell, Designentscheidungen, drei Runden Figma-Iterationen und einer Nutzerevaluation.
Gelernte Lektionen
- Die Persistenzschicht war am Ende zwischen SQLAlchemy für das Nutzermodell und einer handgeschriebenen rohen SQLite-Schicht für alles andere aufgeteilt — damals praktisch, aber eine Inkonsistenz, die ich bei einer Überarbeitung vereinheitlichen würde.
- Der Umfang der Studienarbeit bedeutete, ohne automatisierte Testsuite oder CI auszuliefern — was ich beim nächsten Mal als nicht verhandelbar behandeln würde.
Verwandte Arbeiten

Room of Horror
Ein VR-„Gruselkabinett“, in dem Pflege-Auszubildende in einem virtuellen Krankenzimmer nach Pflegefehlern suchen, während eine Lehrkraft jede Sitzung live aus dem Browser konfiguriert und überwacht.

AOG Moldova
Eine produktive Landingpage für die 24/7-Notfalllogistik von Luftfahrtteilen in Moldau — mit dreisprachiger Oberfläche und einem serverlosen Anfrageformular, das dringende Anfragen direkt an das Einsatzteam leitet.