# akchrao/dae_6mon_coh2_ac architecture

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

- Interactive diagram: https://gitdiagram.com/akchrao/dae_6mon_coh2_ac
- Repository: https://github.com/akchrao/dae_6mon_coh2_ac

## Overview

The sampled runnable product is MoodBuddy, a persistent command-line mood tracker. A user enters or returns with a name, supplies an age for a new profile, records a mood, and receives age- and mood-specific supportive content; the program maintains cumulative counts and timestamped check-in history. User records are stored in a JSON file. The README is empty, and source excerpts omit the central check-in logic, so uncertain internal call links are not shown.

Main entry points: [`python_1/MoodBuddy.py`](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py) (MoodBuddy CLI), [`python_1/moodbuddy_users.json`](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/moodbuddy_users.json) (User JSON)

## Diagram (Mermaid)

```mermaid
flowchart TD

node_user(("User"))
node_main["MoodBuddy CLI<br/>[MoodBuddy.py]"]
node_profile["User Profile<br/>[MoodBuddy.py]"]
node_checkin["Mood Check-In<br/>[MoodBuddy.py]"]
node_guidance["Mood Guidance<br/>[MoodBuddy.py]"]
node_history["Counters &amp; History<br/>[MoodBuddy.py]"]
node_storage[("User JSON")]

node_user -->|"enters input"| node_main
node_main -->|"loads and saves"| node_storage
node_main -->|"gets or creates"| node_profile
node_main -->|"records mood"| node_checkin
node_checkin -->|"selects advice"| node_guidance
node_checkin -->|"updates records"| node_history
node_main -->|"prints response"| node_user

click node_main "https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py"
click node_profile "https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py"
click node_checkin "https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py"
click node_guidance "https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py"
click node_history "https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py"
click node_storage "https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/moodbuddy_users.json"

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,node_profile toneBlue
class node_main,node_checkin,node_guidance,node_history toneTeal
class node_storage toneAmber
```

## Components

### Other components

- **User**
- [MoodBuddy CLI](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py): `python_1/MoodBuddy.py`
- [User Profile](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py): `python_1/MoodBuddy.py`
- [Mood Check-In](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py): `python_1/MoodBuddy.py`
- [Mood Guidance](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py): `python_1/MoodBuddy.py`
- [Counters & History](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/MoodBuddy.py): `python_1/MoodBuddy.py`
- [User JSON](https://github.com/akchrao/dae_6mon_coh2_ac/blob/main/python_1/moodbuddy_users.json): `python_1/moodbuddy_users.json`

## Connections

- User → MoodBuddy CLI: enters input
- MoodBuddy CLI → User JSON: loads and saves
- MoodBuddy CLI → User Profile: gets or creates
- MoodBuddy CLI → Mood Check-In: records mood
- Mood Check-In → Mood Guidance: selects advice
- Mood Check-In → Counters & History: updates records
- MoodBuddy CLI → User: prints response
