# khushal-thummar/jarvis-learning architecture

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

- Interactive diagram: https://gitdiagram.com/khushal-thummar/jarvis-learning
- Repository: https://github.com/khushal-thummar/jarvis-learning

## Overview

This repository contains a set of small, independent JARVIS exercises rather than one integrated application: a command-printing loop, a system report writer, an interactive command-line assistant, and a saved-notes reader. The sampled source shows their separate terminal, OS-information, and file workflows; no links between the day directories are evidenced.

Main entry points: [`Day2/app.js`](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day2/app.js) (System Report App), [`Day3/app.js`](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day3/app.js) (Interactive Assistant), [`Day4/app.js`](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day4/app.js) (Notes Reader), [`day1.js`](https://github.com/khushal-thummar/jarvis-learning/blob/main/day1.js) (Command Printer)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_commands["Command Assistant"]
  node_day3app["Interactive Assistant<br/>[app.js]"]
  node_day3os["OS Information"]
end

subgraph group_monitor["System Monitor"]
  node_day2app["System Report App<br/>[app.js]"]
  node_report["System Report<br/>[Jarvis.txt]"]
end

subgraph group_memory["Memory Reader"]
  node_day4app["Notes Reader<br/>[app.js]"]
  node_notes["Saved Notes<br/>[JarvisNotes.txt]"]
end

node_user(("User"))
node_terminal["Terminal"]
node_day1["Command Printer<br/>[day1.js]"]
node_osinfo["OS Information"]
node_filesystem["Filesystem"]

node_user -->|"starts"| node_day1
node_day1 -->|"prints commands"| node_terminal
node_user -->|"starts"| node_day2app
node_day2app -->|"reads system details"| node_osinfo
node_day2app -->|"prints report status"| node_terminal
node_day2app -->|"writes report"| node_filesystem
node_filesystem -->|"stores"| node_report
node_user -->|"enters commands"| node_day3app
node_day3app -->|"prompts and responds"| node_terminal
node_day3app -->|"reads system details"| node_day3os
node_user -->|"starts"| node_day4app
node_day4app -->|"reads notes"| node_filesystem
node_filesystem -->|"loads"| node_notes
node_day4app -->|"displays notes"| node_terminal

click node_day1 "https://github.com/khushal-thummar/jarvis-learning/blob/main/day1.js"
click node_day2app "https://github.com/khushal-thummar/jarvis-learning/blob/main/Day2/app.js"
click node_report "https://github.com/khushal-thummar/jarvis-learning/blob/main/Day2/Jarvis.txt"
click node_day3app "https://github.com/khushal-thummar/jarvis-learning/blob/main/Day3/app.js"
click node_day4app "https://github.com/khushal-thummar/jarvis-learning/blob/main/Day4/app.js"
click node_notes "https://github.com/khushal-thummar/jarvis-learning/blob/main/Day4/JarvisNotes.txt"

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_day3app,node_day3os,node_user toneBlue
class node_day2app,node_report toneAmber
class node_day4app,node_notes toneMint
class node_terminal,node_osinfo,node_filesystem toneIndigo
class node_day1 toneTeal
```

## Components

### Command Assistant

- [Interactive Assistant](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day3/app.js): `Day3/app.js`
- **OS Information**

### System Monitor

- [System Report App](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day2/app.js): `Day2/app.js`
- [System Report](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day2/Jarvis.txt): `Day2/Jarvis.txt`

### Memory Reader

- [Notes Reader](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day4/app.js): `Day4/app.js`
- [Saved Notes](https://github.com/khushal-thummar/jarvis-learning/blob/main/Day4/JarvisNotes.txt): `Day4/JarvisNotes.txt`

### Other components

- **User**
- **Terminal**
- [Command Printer](https://github.com/khushal-thummar/jarvis-learning/blob/main/day1.js): `day1.js`
- **OS Information**
- **Filesystem**

## Connections

- User → Command Printer: starts
- Command Printer → Terminal: prints commands
- User → System Report App: starts
- System Report App → OS Information: reads system details
- System Report App → Terminal: prints report status
- System Report App → Filesystem: writes report
- Filesystem → System Report: stores
- User → Interactive Assistant: enters commands
- Interactive Assistant → Terminal: prompts and responds
- Interactive Assistant → OS Information: reads system details
- User → Notes Reader: starts
- Notes Reader → Filesystem: reads notes
- Filesystem → Saved Notes: loads
- Notes Reader → Terminal: displays notes
