# heitoramaral/calculadora-android architecture

> Architecture diagram of the GitHub repository heitoramaral/calculadora-android, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-25). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/heitoramaral/calculadora-android
- Repository: https://github.com/heitoramaral/calculadora-android

## Overview

This is a small Android calculator: users enter two values, choose an arithmetic operation, and see the result; they can also clear the fields. The activity owns input handling, validation, operation selection, calculation, and field updates. The layout is loaded by the activity. The layout source and manifest were not sampled, so button-to-handler wiring is not shown.

Main entry points: [`app/src/main/java/br/com/hamaral/calculadora/MainActivity.java`](https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/java/br/com/hamaral/calculadora/MainActivity.java) (Main activity), [`app/src/main/res/layout/activity_main.xml`](https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/res/layout/activity_main.xml) (Calculator layout)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_user(("User"))
node_activity["Main activity<br/>[MainActivity.java]"]
node_layout["Calculator layout<br/>[activity_main.xml]"]
node_arithmetic["Arithmetic<br/>[MainActivity.java]"]

node_user -->|"enters values"| node_activity
node_activity -->|"loads"| node_layout
node_activity -->|"calls calculate"| node_arithmetic
node_arithmetic -->|"returns result"| node_activity
node_activity -->|"shows result"| node_user

click node_activity "https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/java/br/com/hamaral/calculadora/MainActivity.java"
click node_layout "https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/res/layout/activity_main.xml"
click node_arithmetic "https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/java/br/com/hamaral/calculadora/MainActivity.java"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_user toneBlue
class node_activity,node_layout,node_arithmetic toneTeal
```

## Components

### Other components

- **User**
- [Main activity](https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/java/br/com/hamaral/calculadora/MainActivity.java): `app/src/main/java/br/com/hamaral/calculadora/MainActivity.java`
- [Calculator layout](https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/res/layout/activity_main.xml): `app/src/main/res/layout/activity_main.xml`
- [Arithmetic](https://github.com/heitoramaral/calculadora-android/blob/master/app/src/main/java/br/com/hamaral/calculadora/MainActivity.java): `app/src/main/java/br/com/hamaral/calculadora/MainActivity.java`

## Connections

- User → Main activity: enters values
- Main activity → Calculator layout: loads
- Main activity → Arithmetic: calls calculate
- Arithmetic → Main activity: returns result
- Main activity → User: shows result
