# khanyisa-majenge/sequence_dice architecture

> Architecture diagram of the GitHub repository khanyisa-majenge/sequence_dice, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-10). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/khanyisa-majenge/sequence_dice
- Repository: https://github.com/khanyisa-majenge/sequence_dice

## Overview

Sequence Dice is an Android board-game app. Players start or restart a match, roll dice, make a rule-governed move on the board, and try to complete a five-chip line; the README also describes two-player and team modes, live status, and visual move feedback. The Java implementation was not excerpted, so component ownership and internal calls cannot be verified; the graph uses README-documented gameplay relationships and avoids claiming Java-level call flow.

Main entry points: [`app/src/main/res/layout/activity_main.xml`](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/res/layout/activity_main.xml) (Game screen), [`app/src/main/java/com/example/sequencedice/MainActivity.java`](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/MainActivity.java) (Game activity), [`app/src/main/java/com/example/sequencedice/SequenceDiceModel.java`](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceModel.java) (Game model), [`app/src/main/res/drawable`](https://github.com/khanyisa-majenge/sequence_dice/tree/main/app/src/main/res/drawable) (Dice visuals)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_ui["Game interface"]
  node_activity["Game activity<br/>[MainActivity.java]"]
  node_screen["Game screen<br/>[activity_main.xml]"]
  node_dice_art["Dice visuals"]
end

subgraph group_game["Game play"]
  node_model["Game model"]
  node_observers["Game observers"]
  node_listener["Game listener"]
end

node_player(("Player"))

node_player -->|"plays game"| node_activity
node_activity -->|"shows interface"| node_screen
node_screen -->|"shows status"| node_player
node_player -->|"rolls and moves"| node_model
node_model -->|"determines outcome"| node_player
node_screen -->|"shows dice"| node_dice_art

click node_activity "https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/MainActivity.java"
click node_screen "https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/res/layout/activity_main.xml"
click node_dice_art "https://github.com/khanyisa-majenge/sequence_dice/tree/main/app/src/main/res/drawable"
click node_model "https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceModel.java"
click node_observers "https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceObservers.java"
click node_listener "https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceListener.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_activity,node_screen,node_dice_art toneBlue
class node_model,node_observers,node_listener toneAmber
class node_player toneIndigo
```

## Components

### Game interface

- [Game activity](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/MainActivity.java): `app/src/main/java/com/example/sequencedice/MainActivity.java`
- [Game screen](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/res/layout/activity_main.xml): `app/src/main/res/layout/activity_main.xml`
- [Dice visuals](https://github.com/khanyisa-majenge/sequence_dice/tree/main/app/src/main/res/drawable): `app/src/main/res/drawable`

### Game play

- [Game model](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceModel.java): `app/src/main/java/com/example/sequencedice/SequenceDiceModel.java`
- [Game observers](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceObservers.java): `app/src/main/java/com/example/sequencedice/SequenceDiceObservers.java`
- [Game listener](https://github.com/khanyisa-majenge/sequence_dice/blob/main/app/src/main/java/com/example/sequencedice/SequenceDiceListener.java): `app/src/main/java/com/example/sequencedice/SequenceDiceListener.java`

### Other components

- **Player**

## Connections

- Player → Game activity: plays game (evidence: `README.md`)
- Game activity → Game screen: shows interface (evidence: `README.md`)
- Game screen → Player: shows status (evidence: `README.md`)
- Player → Game model: rolls and moves (evidence: `README.md`)
- Game model → Player: determines outcome (evidence: `README.md`)
- Game screen → Dice visuals: shows dice (evidence: `README.md`)
