Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/WorkTeam01/team-practice/llms.txt

Use this file to discover all available pages before exploring further.

Python Calculator is a feature-complete calculator built in Python that offers both a graphical interface (tkinter) and an interactive command-line interface. It supports basic arithmetic, scientific functions like abs, max, and min, and full parenthesized expression evaluation. The project also serves as a practical reference for collaborative Git workflows, CI/CD with GitHub Actions, and pytest-based testing.

Installation

Install dependencies and get the calculator running on your machine in under a minute.

Quickstart

Launch the GUI or CLI and run your first calculation in seconds.

Operations Reference

Explore all supported operators, scientific functions, and parenthesized expressions.

API Reference

Browse the documented Python function signatures in the core calculator module.

Testing Guide

Run the 63+ test suite locally, with coverage reports and GUI mock setup.

Contributing

Learn the Git Flow process, commit conventions, and code review expectations.

What’s included

1

Core math library

src/calculator.py provides pure Python functions — add, subtract, multiply, divide, power, valor_maximo, valor_minimo, and abs_value — all fully type-annotated and tested.
2

Two interfaces

Run python src/gui.py for the tkinter graphical interface or python src/cli.py for the interactive terminal session. Both share the same core math module.
3

Automated tests and CI

63+ pytest cases cover arithmetic edge cases, error handling, and GUI behavior via tkinter mocks. A GitHub Actions workflow runs all tests on every push and pull request.
4

Collaborative workflow

The project follows Git Flow with Conventional Commits. Feature branches target dev, all changes go through code review, and releases are versioned with semantic versioning.

Latest release

The current version is 2.1.0, which added full parenthesized expression support (e.g. (2+3)*4), a reorganized src/ project structure, and fixes for negative decimal input and complex-number edge cases in exponentiation.
Check the Changelog on GitHub for the complete version history.

Build docs developers (and LLMs) love