Professional Calculator
A fully-featured desktop calculator with a hand-written expression engine.
⚡ Note: This was built in month 5 of my self-taught journey (May 2026).
~ About the Project
Unlike a simple GUI wrapper around eval(), this application ships with a completely hand-written expression engine: a tokenizer, a shunting-yard parser, and a Decimal-precision evaluator. It is paired with a polished, Casio-inspired interface built using NiceGUI.
This project represents a massive step up in engineering discipline. It features a modular architecture, a strict quality pipeline (black, isort, flake8, mypy, bandit), and a comprehensive suite of 91 passing unit tests covering all layers.
~ Tech Stack & Architecture
~ How to Run
Option 1: Standalone Executable
Download the .exe from the GitHub Releases page. No Python installation or terminal is required. Just double-click to run.
Option 2: From Source
1. Clone the repository and install dependencies:
git clone https://github.com/Tharana-Dev/Professional-Calculator.git
cd Professional-Calculator
pip install -r requirements.txt
2. Run the GUI (Windows CMD):
set PYTHONPATH=src && python -m calculator.gui
Or if you are using PowerShell:
$env:PYTHONPATH="src"; python -m calculator.gui
3. Run the 91 unit tests:
pytest tests/
~ Want to try it?
Download the source code or the standalone executable, and let me know what you think of the interface and the custom math engine!