2022 · Archived
My Diary
A JavaFX desktop diary app built for a Human Computer Interaction course, with encrypted entries, rich-text editing, search, filtering, and printing.

Overview
My Diary was built for a Human Computer Interaction course as a small JavaFX desktop application focused on private daily writing. The app starts with login and registration screens, then opens a diary workspace where each user has their own folder and daily entries.
Entries are saved as date-named HTML files and encrypted on disk with a per-user AES key. The application combines a MySQL-backed account table with local encrypted diary storage, using JavaFX controllers and FXML screens for authentication, registration, and the main diary interface.
The diary screen supports rich-text editing through JavaFX HTMLEditor, searching across entries, filtering by a single day or date interval, autosave, manual save, delete, refresh, zoom in and out, Portuguese spell checking with LanguageTool, and print/export through JavaFX PrinterJob.
Highlights
- Built a desktop diary around login, registration, per-user folders, and one encrypted HTML diary entry per day.
- Used JavaFX HTMLEditor for rich-text writing, with search, date filtering, autosave, deletion, refresh, and zoom controls.
- Added Portuguese spell checking through LanguageTool plus print/export support through JavaFX PrinterJob.