# bunyaminakdeniz/ruby architecture

> Architecture diagram of the GitHub repository bunyaminakdeniz/ruby, 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/bunyaminakdeniz/ruby
- Repository: https://github.com/bunyaminakdeniz/ruby

## Overview

This repository is a small collection of Ruby learning notes, standalone exercises, and example programs—not one integrated application. Its user-facing workflows are independent: some scripts accept terminal input and print a result, the roster script transforms a CSV file into output text, the spreadsheet example reads an XLSX workbook, and the Tk example animates a pendulum. The README is empty, and unsampled scripts are represented only where their filenames establish a distinct example; no shared runner or cross-script calls are evident.

Main entry points: [`Sorular/lasagna.rb`](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/lasagna.rb) (Roster formatter), [`Sorular/xlsxx_reader.rb`](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/xlsxx_reader.rb) (Workbook reader), [`Sorular/sorular.rb`](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/sorular.rb) (Number puzzles), [`Sorular/soru2.rb`](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru2.rb) (Digit sequences)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_notes["Ruby notes"]
  node_notes1["Core syntax notes<br/>[notes.rb]"]
  node_notes2["Hashes and blocks<br/>[notes2.rb]"]
  node_classes["Class example<br/>[classlar.rb]"]
end

subgraph group_exercises["Standalone exercises"]
  node_questions["Number puzzles<br/>[sorular.rb]"]
  node_sequence["Digit sequences<br/>[soru2.rb]"]
  node_primes["Prime permutations<br/>[soru10.rb]"]
  node_truncatable["Truncatable primes<br/>[soru14.rb]"]
  node_tictactoe["Tic-tac-toe<br/>[tictactoe.rb]"]
  node_other["Other exercises"]
end

subgraph group_examples["Example programs"]
  node_roster["Roster formatter<br/>[lasagna.rb]"]
  node_xlsx["Workbook reader<br/>[xlsxx_reader.rb]"]
  node_pendulum["Pendulum animation<br/>[tk.rb]"]
  node_calculator["Simple calculator<br/>[exercism.rb]"]
end

node_learner(("Learner"))
node_csv["Roster CSV"]
node_formatted["Formatted roster"]
node_workbook["XLSX workbook"]

node_learner -->|"enters input"| node_questions
node_learner -->|"enters input"| node_sequence
node_learner -->|"plays"| node_tictactoe
node_learner -->|"supplies paths"| node_roster
node_roster -->|"reads"| node_csv
node_roster -->|"writes"| node_formatted
node_learner -->|"chooses column"| node_xlsx
node_xlsx -->|"reads"| node_workbook
node_learner -->|"starts"| node_pendulum
node_learner -->|"calls"| node_calculator

click node_notes1 "https://github.com/bunyaminakdeniz/ruby/blob/master/Notlar/notes.rb"
click node_notes2 "https://github.com/bunyaminakdeniz/ruby/blob/master/Notlar/notes2.rb"
click node_classes "https://github.com/bunyaminakdeniz/ruby/blob/master/Notlar/classlar.rb"
click node_questions "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/sorular.rb"
click node_sequence "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru2.rb"
click node_primes "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru10.rb"
click node_truncatable "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru14.rb"
click node_tictactoe "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/tictactoe.rb"
click node_roster "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/lasagna.rb"
click node_xlsx "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/xlsxx_reader.rb"
click node_pendulum "https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/tk.rb"
click node_calculator "https://github.com/bunyaminakdeniz/ruby/blob/master/exercism.rb"
click node_other "https://github.com/bunyaminakdeniz/ruby/tree/master/Sorular"

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_notes1,node_notes2,node_classes toneBlue
class node_questions,node_sequence,node_primes,node_truncatable,node_tictactoe,node_other toneAmber
class node_roster,node_xlsx,node_pendulum,node_calculator toneMint
class node_learner,node_csv,node_formatted,node_workbook toneIndigo
```

## Components

### Ruby notes

- [Core syntax notes](https://github.com/bunyaminakdeniz/ruby/blob/master/Notlar/notes.rb): `Notlar/notes.rb`
- [Hashes and blocks](https://github.com/bunyaminakdeniz/ruby/blob/master/Notlar/notes2.rb): `Notlar/notes2.rb`
- [Class example](https://github.com/bunyaminakdeniz/ruby/blob/master/Notlar/classlar.rb): `Notlar/classlar.rb`

### Standalone exercises

- [Number puzzles](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/sorular.rb): `Sorular/sorular.rb`
- [Digit sequences](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru2.rb): `Sorular/soru2.rb`
- [Prime permutations](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru10.rb): `Sorular/soru10.rb`
- [Truncatable primes](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/soru14.rb): `Sorular/soru14.rb`
- [Tic-tac-toe](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/tictactoe.rb): `Sorular/tictactoe.rb`
- [Other exercises](https://github.com/bunyaminakdeniz/ruby/tree/master/Sorular): `Sorular`

### Example programs

- [Roster formatter](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/lasagna.rb): `Sorular/lasagna.rb`
- [Workbook reader](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/xlsxx_reader.rb): `Sorular/xlsxx_reader.rb`
- [Pendulum animation](https://github.com/bunyaminakdeniz/ruby/blob/master/Sorular/tk.rb): `Sorular/tk.rb`
- [Simple calculator](https://github.com/bunyaminakdeniz/ruby/blob/master/exercism.rb): `exercism.rb`

### Other components

- **Learner**
- **Roster CSV**
- **Formatted roster**
- **XLSX workbook**

## Connections

- Learner → Number puzzles: enters input
- Learner → Digit sequences: enters input
- Learner → Tic-tac-toe: plays
- Learner → Roster formatter: supplies paths
- Roster formatter → Roster CSV: reads
- Roster formatter → Formatted roster: writes
- Learner → Workbook reader: chooses column
- Workbook reader → XLSX workbook: reads
- Learner → Pendulum animation: starts
- Learner → Simple calculator: calls
