# adhavar/grocery-sales-analysis-visualization architecture

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

- Interactive diagram: https://gitdiagram.com/adhavar/grocery-sales-analysis-visualization
- Repository: https://github.com/adhavar/grocery-sales-analysis-visualization

## Overview

This repository documents a SQLite workflow for turning grocery transaction CSVs into validated, joined analytical data, then querying sales performance for a Tableau dashboard. The domain stages are schema creation, data validation, analytical-table construction, and business analysis; the visualization is a downstream product capability. Relationships are based on the README only, since no SQL excerpts were provided, so query-level details and dashboard data connections are not inferred.

Main entry points: [`sql/1_create_tables.sql`](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/1_create_tables.sql) (Source Tables), [`sql/3_join_and_selection.sql`](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/3_join_and_selection.sql) (Analytical Table), [`sql/2_data_validation.sql`](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/2_data_validation.sql) (Data Validation), [`sql/4_data_analysis.sql`](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/4_data_analysis.sql) (Sales Analysis)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_preparation["Data Preparation"]
  node_schema[("Source Tables")]
  node_validation["Data Validation"]
  node_analysis_table[("Analytical Table")]
end

subgraph group_analysis["Sales Analysis"]
  node_sales_queries["Sales Analysis"]
end

subgraph group_visualization["Visualization"]
  node_tableau["Tableau Dashboard"]
end

node_csv_dataset["Grocery CSVs"]
node_sqlite[("SQLite")]

node_csv_dataset -->|"imported into"| node_schema
node_schema -->|"validated by"| node_validation
node_schema -->|"joined into"| node_analysis_table
node_validation -->|"cleaned for"| node_analysis_table
node_analysis_table -->|"queried by"| node_sales_queries
node_sales_queries -->|"results validate"| node_tableau
node_sqlite -->|"creates tables"| node_schema
node_sqlite -->|"runs queries"| node_validation
node_sqlite -->|"transforms data"| node_analysis_table
node_sqlite -->|"runs analysis"| node_sales_queries

click node_schema "https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/1_create_tables.sql"
click node_validation "https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/2_data_validation.sql"
click node_analysis_table "https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/3_join_and_selection.sql"
click node_sales_queries "https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/4_data_analysis.sql"

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_schema,node_validation,node_analysis_table toneBlue
class node_sales_queries,node_sqlite toneAmber
class node_tableau toneMint
class node_csv_dataset toneIndigo
```

## Components

### Data Preparation

- [Source Tables](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/1_create_tables.sql): `sql/1_create_tables.sql`
- [Data Validation](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/2_data_validation.sql): `sql/2_data_validation.sql`
- [Analytical Table](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/3_join_and_selection.sql): `sql/3_join_and_selection.sql`

### Sales Analysis

- [Sales Analysis](https://github.com/adhavar/grocery-sales-analysis-visualization/blob/main/sql/4_data_analysis.sql): `sql/4_data_analysis.sql`

### Visualization

- **Tableau Dashboard**

### Other components

- **Grocery CSVs**
- **SQLite**

## Connections

- Grocery CSVs → Source Tables: imported into (evidence: `README.md`)
- Source Tables → Data Validation: validated by (evidence: `README.md`)
- Source Tables → Analytical Table: joined into (evidence: `README.md`)
- Data Validation → Analytical Table: cleaned for (evidence: `README.md`)
- Analytical Table → Sales Analysis: queried by (evidence: `README.md`)
- Sales Analysis → Tableau Dashboard: results validate (evidence: `README.md`)
- SQLite → Source Tables: creates tables (evidence: `README.md`)
- SQLite → Data Validation: runs queries (evidence: `README.md`)
- SQLite → Analytical Table: transforms data (evidence: `README.md`)
- SQLite → Sales Analysis: runs analysis (evidence: `README.md`)
