# srijen-raja/aizantra architecture

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

## Overview

Aizantra Website is a React marketing site for Aizantra’s consulting services and TRADIX® platform. A visitor enters through the shared site shell, navigates to a route, and reads its content; the home and services pages also present service offerings, while case-study pages present client outcomes. Shared cards and section components provide the main content layer. The README identifies the site but gives little architectural detail; relationships below rely on the shown source and SOURCE INDEX references, so unsampled page behavior is not inferred.

Main entry points: [`src/router.jsx`](https://github.com/srijen-raja/aizantra/blob/main/src/router.jsx) (Route dispatcher), [`src/components/SectionWrapper.jsx`](https://github.com/srijen-raja/aizantra/blob/main/src/components/SectionWrapper.jsx) (Section wrapper), [`src/App.jsx`](https://github.com/srijen-raja/aizantra/blob/main/src/App.jsx) (App shell), [`src/pages/Home.jsx`](https://github.com/srijen-raja/aizantra/blob/main/src/pages/Home.jsx) (Home)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_shell["Site shell"]
  node_app["App shell<br/>[App.jsx]"]
  node_header["Header<br/>[Header.jsx]"]
  node_footer["Footer<br/>[Footer.jsx]"]
  node_scrolltop["Scroll to top<br/>[ScrollToTop.jsx]"]
  node_observer["Scroll animations<br/>[observe.js]"]
end

subgraph group_navigation["Route handling"]
  node_router["Route dispatcher<br/>[router.jsx]"]
end

subgraph group_pages["Marketing pages"]
  node_home["Home<br/>[Home.jsx]"]
  node_about["About<br/>[About.jsx]"]
  node_services["Services<br/>[Services.jsx]"]
  node_industries["Industries<br/>[Industries.jsx]"]
  node_success["Client success<br/>[ClientSuccess.jsx]"]
  node_insights["Insights<br/>[Insights.jsx]"]
  node_contact["Contact<br/>[Contact.jsx]"]
  node_privacy["Privacy policy<br/>[PrivaciyPolicy.jsx]"]
  node_terms["Terms of service<br/>[TermsOfService.jsx]"]
end

subgraph group_shared["Shared content UI"]
  node_section["Section wrapper<br/>[SectionWrapper.jsx]"]
  node_hero["Hero<br/>[Hero.jsx]"]
  node_servicecard["Service card<br/>[ServiceCard.jsx]"]
  node_casestudycard["Case study card<br/>[CaseStudyCard.jsx]"]
  node_icons["Content icons<br/>[icons.jsx]"]
end

node_visitor(("Website visitor"))

node_visitor -->|"opens"| node_app
node_app -->|"renders"| node_header
node_app -->|"renders"| node_footer
node_app -->|"renders"| node_scrolltop
node_app -->|"renders"| node_router
node_app -->|"initializes"| node_observer
node_visitor -->|"selects route"| node_router
node_router -->|"routes to"| node_home
node_router -->|"routes to"| node_about
node_router -->|"routes to"| node_services
node_router -->|"routes to"| node_industries
node_router -->|"routes to"| node_success
node_router -->|"routes to"| node_insights
node_router -->|"routes to"| node_contact
node_router -->|"routes to"| node_privacy
node_router -->|"routes to"| node_terms
node_home -->|"renders"| node_hero
node_home -->|"renders"| node_section
node_home -->|"renders"| node_servicecard
node_home -->|"renders"| node_casestudycard
node_home -->|"uses"| node_icons
node_services -->|"renders"| node_section
node_services -->|"renders"| node_servicecard
node_success -->|"renders"| node_section
node_success -->|"renders"| node_casestudycard
node_success -->|"uses"| node_icons
node_about -->|"renders"| node_section
node_industries -->|"renders"| node_section
node_insights -->|"renders"| node_section
node_privacy -->|"renders"| node_section
node_terms -->|"renders"| node_section
node_contact -->|"renders"| node_section

click node_app "https://github.com/srijen-raja/aizantra/blob/main/src/App.jsx"
click node_header "https://github.com/srijen-raja/aizantra/blob/main/src/components/Header.jsx"
click node_footer "https://github.com/srijen-raja/aizantra/blob/main/src/components/Footer.jsx"
click node_scrolltop "https://github.com/srijen-raja/aizantra/blob/main/src/components/ScrollToTop.jsx"
click node_observer "https://github.com/srijen-raja/aizantra/blob/main/src/utils/observe.js"
click node_router "https://github.com/srijen-raja/aizantra/blob/main/src/router.jsx"
click node_home "https://github.com/srijen-raja/aizantra/blob/main/src/pages/Home.jsx"
click node_about "https://github.com/srijen-raja/aizantra/blob/main/src/pages/About.jsx"
click node_services "https://github.com/srijen-raja/aizantra/blob/main/src/pages/Services.jsx"
click node_industries "https://github.com/srijen-raja/aizantra/blob/main/src/pages/Industries.jsx"
click node_success "https://github.com/srijen-raja/aizantra/blob/main/src/pages/ClientSuccess.jsx"
click node_insights "https://github.com/srijen-raja/aizantra/blob/main/src/pages/Insights.jsx"
click node_contact "https://github.com/srijen-raja/aizantra/blob/main/src/pages/Contact.jsx"
click node_privacy "https://github.com/srijen-raja/aizantra/blob/main/src/pages/PrivaciyPolicy.jsx"
click node_terms "https://github.com/srijen-raja/aizantra/blob/main/src/pages/TermsOfService.jsx"
click node_section "https://github.com/srijen-raja/aizantra/blob/main/src/components/SectionWrapper.jsx"
click node_hero "https://github.com/srijen-raja/aizantra/blob/main/src/components/Hero.jsx"
click node_servicecard "https://github.com/srijen-raja/aizantra/blob/main/src/components/ServiceCard.jsx"
click node_casestudycard "https://github.com/srijen-raja/aizantra/blob/main/src/components/CaseStudyCard.jsx"
click node_icons "https://github.com/srijen-raja/aizantra/blob/main/src/components/icons.jsx"

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_app,node_header,node_footer,node_scrolltop,node_observer toneBlue
class node_router toneAmber
class node_home,node_about,node_services,node_industries,node_success,node_insights,node_contact,node_privacy,node_terms toneMint
class node_section,node_hero,node_servicecard,node_casestudycard,node_icons toneRose
class node_visitor toneIndigo
```

## Components

### Site shell

- [App shell](https://github.com/srijen-raja/aizantra/blob/main/src/App.jsx): `src/App.jsx`
- [Header](https://github.com/srijen-raja/aizantra/blob/main/src/components/Header.jsx): `src/components/Header.jsx`
- [Footer](https://github.com/srijen-raja/aizantra/blob/main/src/components/Footer.jsx): `src/components/Footer.jsx`
- [Scroll to top](https://github.com/srijen-raja/aizantra/blob/main/src/components/ScrollToTop.jsx): `src/components/ScrollToTop.jsx`
- [Scroll animations](https://github.com/srijen-raja/aizantra/blob/main/src/utils/observe.js): `src/utils/observe.js`

### Route handling

- [Route dispatcher](https://github.com/srijen-raja/aizantra/blob/main/src/router.jsx): `src/router.jsx`

### Marketing pages

- [Home](https://github.com/srijen-raja/aizantra/blob/main/src/pages/Home.jsx): `src/pages/Home.jsx`
- [About](https://github.com/srijen-raja/aizantra/blob/main/src/pages/About.jsx): `src/pages/About.jsx`
- [Services](https://github.com/srijen-raja/aizantra/blob/main/src/pages/Services.jsx): `src/pages/Services.jsx`
- [Industries](https://github.com/srijen-raja/aizantra/blob/main/src/pages/Industries.jsx): `src/pages/Industries.jsx`
- [Client success](https://github.com/srijen-raja/aizantra/blob/main/src/pages/ClientSuccess.jsx): `src/pages/ClientSuccess.jsx`
- [Insights](https://github.com/srijen-raja/aizantra/blob/main/src/pages/Insights.jsx): `src/pages/Insights.jsx`
- [Contact](https://github.com/srijen-raja/aizantra/blob/main/src/pages/Contact.jsx): `src/pages/Contact.jsx`
- [Privacy policy](https://github.com/srijen-raja/aizantra/blob/main/src/pages/PrivaciyPolicy.jsx): `src/pages/PrivaciyPolicy.jsx`
- [Terms of service](https://github.com/srijen-raja/aizantra/blob/main/src/pages/TermsOfService.jsx): `src/pages/TermsOfService.jsx`

### Shared content UI

- [Section wrapper](https://github.com/srijen-raja/aizantra/blob/main/src/components/SectionWrapper.jsx): `src/components/SectionWrapper.jsx`
- [Hero](https://github.com/srijen-raja/aizantra/blob/main/src/components/Hero.jsx): `src/components/Hero.jsx`
- [Service card](https://github.com/srijen-raja/aizantra/blob/main/src/components/ServiceCard.jsx): `src/components/ServiceCard.jsx`
- [Case study card](https://github.com/srijen-raja/aizantra/blob/main/src/components/CaseStudyCard.jsx): `src/components/CaseStudyCard.jsx`
- [Content icons](https://github.com/srijen-raja/aizantra/blob/main/src/components/icons.jsx): `src/components/icons.jsx`

### Other components

- **Website visitor**

## Connections

- Website visitor → App shell: opens
- App shell → Header: renders (evidence: `src/App.jsx`)
- App shell → Footer: renders (evidence: `src/App.jsx`)
- App shell → Scroll to top: renders (evidence: `src/App.jsx`)
- App shell → Route dispatcher: renders (evidence: `src/App.jsx`)
- App shell → Scroll animations: initializes (evidence: `src/main.jsx`)
- Website visitor → Route dispatcher: selects route (evidence: `src/router.jsx`)
- Route dispatcher → Home: routes to (evidence: `src/router.jsx`)
- Route dispatcher → About: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Services: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Industries: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Client success: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Insights: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Contact: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Privacy policy: routes to (evidence: `src/router.jsx`)
- Route dispatcher → Terms of service: routes to (evidence: `src/router.jsx`)
- Home → Hero: renders (evidence: `src/pages/Home.jsx`)
- Home → Section wrapper: renders (evidence: `src/pages/Home.jsx`)
- Home → Service card: renders (evidence: `src/pages/Home.jsx`)
- Home → Case study card: renders (evidence: `src/pages/Home.jsx`)
- Home → Content icons: uses (evidence: `src/pages/Home.jsx`)
- Services → Section wrapper: renders (evidence: `src/pages/Services.jsx`)
- Services → Service card: renders (evidence: `src/pages/Services.jsx`)
- Client success → Section wrapper: renders (evidence: `src/pages/ClientSuccess.jsx`)
- Client success → Case study card: renders (evidence: `src/pages/ClientSuccess.jsx`)
- Client success → Content icons: uses (evidence: `src/pages/ClientSuccess.jsx`)
- About → Section wrapper: renders (evidence: `src/pages/About.jsx`)
- Industries → Section wrapper: renders (evidence: `src/pages/Industries.jsx`)
- Insights → Section wrapper: renders (evidence: `src/pages/Insights.jsx`)
- Privacy policy → Section wrapper: renders (evidence: `src/pages/PrivaciyPolicy.jsx`)
- Terms of service → Section wrapper: renders (evidence: `src/pages/TermsOfService.jsx`)
- Contact → Section wrapper: renders (evidence: `src/pages/Contact.jsx`)
