In this project, I rebuilt my original Casio Personal M-1 calculator in JavaFX โ not just the functionality, but the entire look and feel, down to the pixel. What started as a UI practice exercise turned into a full-blown retro replica.
๐ The Inspiration
This is the actual calculator that started it all โ the one I used as a kid:
And hereโs my JavaFX recreation, built using Scene Builder and custom styling:
From digit alignment to button layout, I wanted it to feel like the original โ scratches and all.
๐ ๏ธ What I Built
ASO Calculator is a clean, desktop JavaFX app with:
- A glowing LED-style custom display using a handmade font
- CSS styling for realistic button shadows, presses, and bevels
- Custom layout with
StackPane
for glow overlays - Packaged into an
.exe
installer viajpackage
๐ฃ Font Creation
The calculator display font was redrawn by hand in CorelDRAW, then converted and spaced in FontForge. Decimal alignment required custom kerning to match the real LED layout.
The display glow is achieved using two overlapping labels and a Gaussian drop shadow โ pure JavaFX CSS.
๐ What I Learned
This project helped solidify my understanding of:
- JavaFX layouts (
GridPane
,VBox
,StackPane
) - CSS styling in JavaFX (hover effects, drop shadows)
- Scene Builder UI integration
- GitHub workflows and markdown formatting
- Packaging apps into
.exe
usingjpackage
- Font creation using external tools and embedding them via JavaFX
๐ก Why This Matters
Itโs more than a calculator.
It represents the bridge from:
- Theory โ Application
- Tutorial โ Original Project
- Learning Java โ Becoming a Java Developer
๐ Try It Out
โ You can download and test the final app directly from the GitHub Releases tab:
๐ Download Installer
โก๏ธ ASO.Calculator-1.0.exe
โ ๏ธ May trigger antivirus warnings since it's unsigned. Itโs safe to install.
๐ GitHub Repo
Browse the full source code, font files, styling, and instructions here:
๐ https://github.com/aso-repos/CalculatorJavaFX
๐ About Me
Java & JavaFX dev.
Caught the coding bug at 12 when I wrote my first program on a Commodore 64. Now actively pursuing my dream & building desktop apps in Java. Certified in Java, Python, HTML and CSS. (See LinkedIn profile for full qualification list, learning institutions, and experience.)
Letโs connect:
๐ LinkedIn
๐ GitHub Profile
Top comments (0)