# rajeshdalvicode/composite-cement-strength-prediction-model architecture

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

- Interactive diagram: https://gitdiagram.com/rajeshdalvicode/composite-cement-strength-prediction-model
- Repository: https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model

## Overview

This repository is a small concrete-strength data-preparation pipeline. Running `main.py` loads the concrete dataset, adds a water-to-cementitious-materials ratio, separates features and target, splits the data, scales features, and reports the resulting train/test shapes. The orchestration and both core modules are excerpted; the CSV is present in the tree. The separate feature-engineering module was not read, so its behavior and any connections are omitted.

Main entry points: [`main.py`](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/main.py) (Pipeline entry), [`src/data_preprocessing.py`](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/src/data_preprocessing.py) (Feature prep and split), [`src/data_ingestion.py`](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/src/data_ingestion.py) (Data ingestion), [`data/Concrete_Data - Concrete_Data.csv`](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/data/Concrete_Data%20-%20Concrete_Data.csv) (Concrete dataset)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_run["Pipeline"]
  node_runner["Pipeline entry<br/>[main.py]"]
  node_ingestion["Data ingestion<br/>[data_ingestion.py]"]
  node_prep["Feature prep and split"]
end

subgraph group_data["Concrete Data"]
  node_csv["Concrete dataset"]
end

node_sklearn["scikit-learn"]
node_console(("Console"))

node_runner -->|"calls"| node_ingestion
node_ingestion -->|"reads"| node_csv
node_runner -->|"passes data"| node_prep
node_prep -->|"splits and scales"| node_sklearn
node_prep -->|"returns splits"| node_runner
node_runner -->|"prints shapes"| node_console

click node_runner "https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/main.py"
click node_ingestion "https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/src/data_ingestion.py"
click node_prep "https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/src/data_preprocessing.py"
click node_csv "https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/data/Concrete_Data%20-%20Concrete_Data.csv"

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_runner,node_ingestion,node_prep toneBlue
class node_csv toneAmber
class node_sklearn,node_console toneIndigo
```

## Components

### Pipeline

- [Pipeline entry](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/main.py): `main.py`
- [Data ingestion](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/src/data_ingestion.py): `src/data_ingestion.py`
- [Feature prep and split](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/src/data_preprocessing.py): `src/data_preprocessing.py`

### Concrete Data

- [Concrete dataset](https://github.com/rajeshdalvicode/composite-cement-strength-prediction-model/blob/main/data/Concrete_Data%20-%20Concrete_Data.csv): `data/Concrete_Data - Concrete_Data.csv`

### Other components

- **scikit-learn**
- **Console**

## Connections

- Pipeline entry → Data ingestion: calls (evidence: `main.py`)
- Data ingestion → Concrete dataset: reads (evidence: `src/data_ingestion.py`)
- Pipeline entry → Feature prep and split: passes data (evidence: `main.py`)
- Feature prep and split → scikit-learn: splits and scales (evidence: `src/data_preprocessing.py`)
- Feature prep and split → Pipeline entry: returns splits (evidence: `main.py`)
- Pipeline entry → Console: prints shapes (evidence: `main.py`)
