Dies ist eine einfache Desktop-Anwendung zum Erstellen und Verwalten von E-Mail-Remindern.
Die App basiert auf Java und verwendet Java Swing für die grafische Benutzeroberfläche.
- Erstellen von Erinnerungen mit Empfänger, Betreff, Nachricht und Intervall
- Automatischer E-Mail-Versand im gewählten Intervall
- Übersicht aller aktiven Reminder in der rechten Spalte
- Reminder einzeln starten und stoppen
- Reminder löschen
- Alle Reminder gleichzeitig stoppen
- Automatisches Speichern beim Beenden und Laden beim Start
- Sortierte Anzeige nach Erstellungsdatum
- Zuletzt verwendete Sortierreihenfolge wird gespeichert
- Zusätzlicher Reiter für Desktop-Benachrichtigungen
Das Projekt folgt dem MVC-Prinzip (Model-View-Controller) und ist übersichtlich in Packages gegliedert:
controller/: Koordiniert die Anwendung und verbindet UI und Logikdesktop/: Systemnahe Komponenten wie Desktop-Benachrichtigungenmail/: E-Mail-Versand über SMTPmanager/: Verwaltung und Status der Remindermodels/: Reminder-Datenmodellepersistence/: Speicherung und Laden der Daten (JSON mit Gson)scheduler/: Intervallsteuerung mit Timerui/: Java Swing GUI (Formulare, Listen, Eingabefelder)utils/: Hilfsfunktionen und Konfigurationslogik
Zusätzliche Konfigurationsdateien befinden sich in resources/:
config.properties– SMTP-Zugangsdatenlogging.properties– Java-Logging-Konfigurationsettings.properties– sonstige Anwendungseinstellungen
- Projekt in einer Java-IDE (z. B. IntelliJ IDEA) öffnen
config.propertiesmit Absenderdaten (Gmail) anpassen- Hauptklasse
MailGuiAppstarten - Reminder über das Formular anlegen
- Beim Beenden werden alle Reminder automatisch gespeichert
- Java 17 oder neuer
- Internetverbindung (für den E-Mail-Versand)
- Gmail-Konto für SMTP-Versand (
config.properties)
Reminder werden lokal als JSON-Datei gespeichert unter:
~/.reminder-app/reminders.json
Die Anwendung verwendet eine config.properties-Datei mit folgenden Feldern:
mail.user=example@gmail.com
mail.password=deinPasswort
mail.smtp=smtp.gmail.com- Filterfunktion (z. B. nur aktive Reminder anzeigen)
- Tray-Icon und Hintergrundbetrieb
- Android-Version (zukünftig geplant)
Projekt von Furkan Ervan
Erstellt zum Lernen von Java, GUI-Entwicklung und strukturiertem Softwaredesign.