Kaizen To-Do
Desktop task manager built with Java 21 and JavaFX, with a premium interface and clean architecture under the hood.
- Java
- JavaFX
- Maven
The case study
- Problem
- Anyone can write a task CRUD; the hard part is one that looks like a commercial product and is well designed, with no frameworks or database.
- Solution
- A to-do with priorities, categories, views, light/dark themes and i18n (ES/EN), with the domain at the center and JSON persistence using atomic writes and corruption recovery.
- Outcome
- A polished, working app that showcases modern Java, JavaFX and clean architecture. MIT licensed.
Process
Development process
The reasoning behind the technical decisions: why each technology was chosen, what challenges came up and how they were solved.
- 01
JavaFX for a premium UI
I chose JavaFX over Swing because its CSS styling model let me build an interface that feels like a commercial product: light and dark themes, i18n in Spanish and English and careful transitions. The goal was to show that desktop Java can also look modern.
- 02
The domain at the center
I applied clean architecture: tasks, priorities and categories live in a domain that depends on neither the interface nor the storage. That makes the logic the most stable, testable part, and turns the UI into a replaceable detail.
- 03
Persistence without a database
To make the app work with zero installation, I store state in JSON. The challenge was integrity: if the program closes mid-save, the data must not corrupt. I solved it with atomic writes (temp file + rename) and corruption recovery, so a valid state always remains.
Repositories
Commits
- Varios Cambios
daa925bEduardo3 weeks ago