# ziyade001/ace-arts-deco architecture

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

- Interactive diagram: https://gitdiagram.com/ziyade001/ace-arts-deco
- Repository: https://github.com/ziyade001/ace-arts-deco

## Overview

Ace_Arts & Déco is a Laravel site for presenting a woodworking atelier and its creations, with a catalogue and authenticated catalogue-management area. Visitors browse the public site and catalogue, or contact the atelier; administrators sign in to add catalogue images. The graph reflects documented capabilities and sampled controller behavior. The route file and several controllers were not sampled, so uncertain dispatch details and external contact handling are omitted.

Main entry points: [`app/Http/Controllers/CatalogueController.php`](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/CatalogueController.php) (Catalogue actions), [`routes/auth.php`](https://github.com/ziyade001/ace-arts-deco/blob/main/routes/auth.php) (Auth routes), [`routes/web.php`](https://github.com/ziyade001/ace-arts-deco/blob/main/routes/web.php) (Web routes), [`app/Http/Controllers/MainController.php`](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/MainController.php) (Site pages)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_public["Public presentation"]
  node_web_routes["Web routes<br/>[web.php]"]
  node_main["Site pages<br/>[MainController.php]"]
  node_site_views["Public pages<br/>[welcome.blade.php]"]
  node_contact["Contact handling"]
  node_contact_view["Contact email view<br/>[contact.blade.php]"]
end

subgraph group_catalogue["Catalogue"]
  node_catalogue_controller["Catalogue actions"]
  node_catalogue_view["Category display<br/>[show.blade.php]"]
end

subgraph group_account["Accounts"]
  node_auth_routes["Auth routes<br/>[auth.php]"]
  node_login["Session handling"]
  node_login_view["Login page<br/>[login.blade.php]"]
  node_registration["Registration"]
  node_profile["Profile management"]
end

subgraph group_data["Application data"]
  node_catalogue_data[("Catalogue records<br/>[Catalogue.php]")]
  node_public_storage["Image storage"]
  node_user_data[("User records<br/>[User.php]")]
end

node_visitor(("Visitor"))
node_admin(("Administrator"))

node_visitor -->|"requests pages"| node_web_routes
node_web_routes -->|"dispatches"| node_main
node_main -->|"renders"| node_site_views
node_visitor -->|"submits inquiry"| node_contact
node_web_routes -->|"dispatches catalogue"| node_catalogue_controller
node_catalogue_controller -->|"queries and saves"| node_catalogue_data
node_catalogue_controller -->|"stores images"| node_public_storage
node_catalogue_controller -->|"renders category"| node_catalogue_view
node_admin -->|"requests access"| node_auth_routes
node_auth_routes -->|"dispatches"| node_login
node_login -->|"renders login"| node_login_view
node_admin -->|"adds creations"| node_catalogue_controller
node_auth_routes -->|"dispatches registration"| node_registration
node_registration -->|"creates user"| node_user_data
node_auth_routes -->|"dispatches profile"| node_profile
node_profile -->|"updates or deletes"| node_user_data

click node_web_routes "https://github.com/ziyade001/ace-arts-deco/blob/main/routes/web.php"
click node_main "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/MainController.php"
click node_site_views "https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/welcome.blade.php"
click node_contact "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/ContactController.php"
click node_catalogue_controller "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/CatalogueController.php"
click node_catalogue_view "https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/catalogue/show.blade.php"
click node_catalogue_data "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Models/Catalogue.php"
click node_public_storage "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/CatalogueController.php"
click node_auth_routes "https://github.com/ziyade001/ace-arts-deco/blob/main/routes/auth.php"
click node_login "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/Auth/AuthenticatedSessionController.php"
click node_login_view "https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/auth/login.blade.php"
click node_registration "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/Auth/RegisteredUserController.php"
click node_profile "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/ProfileController.php"
click node_user_data "https://github.com/ziyade001/ace-arts-deco/blob/main/app/Models/User.php"
click node_contact_view "https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/emails/contact.blade.php"

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_web_routes,node_main,node_site_views,node_contact,node_contact_view toneBlue
class node_catalogue_controller,node_catalogue_view toneAmber
class node_auth_routes,node_login,node_login_view,node_registration,node_profile toneMint
class node_catalogue_data,node_public_storage,node_user_data toneRose
class node_visitor,node_admin toneIndigo
```

## Components

### Public presentation

- [Web routes](https://github.com/ziyade001/ace-arts-deco/blob/main/routes/web.php): `routes/web.php`
- [Site pages](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/MainController.php): `app/Http/Controllers/MainController.php`
- [Public pages](https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/welcome.blade.php): `resources/views/welcome.blade.php`
- [Contact handling](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/ContactController.php): `app/Http/Controllers/ContactController.php`
- [Contact email view](https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/emails/contact.blade.php): `resources/views/emails/contact.blade.php`

### Catalogue

- [Catalogue actions](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/CatalogueController.php): `app/Http/Controllers/CatalogueController.php`
- [Category display](https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/catalogue/show.blade.php): `resources/views/catalogue/show.blade.php`

### Accounts

- [Auth routes](https://github.com/ziyade001/ace-arts-deco/blob/main/routes/auth.php): `routes/auth.php`
- [Session handling](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/Auth/AuthenticatedSessionController.php): `app/Http/Controllers/Auth/AuthenticatedSessionController.php`
- [Login page](https://github.com/ziyade001/ace-arts-deco/blob/main/resources/views/auth/login.blade.php): `resources/views/auth/login.blade.php`
- [Registration](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/Auth/RegisteredUserController.php): `app/Http/Controllers/Auth/RegisteredUserController.php`
- [Profile management](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/ProfileController.php): `app/Http/Controllers/ProfileController.php`

### Application data

- [Catalogue records](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Models/Catalogue.php): `app/Models/Catalogue.php`
- [Image storage](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Http/Controllers/CatalogueController.php): `app/Http/Controllers/CatalogueController.php`
- [User records](https://github.com/ziyade001/ace-arts-deco/blob/main/app/Models/User.php): `app/Models/User.php`

### Other components

- **Visitor**
- **Administrator**

## Connections

- Visitor → Web routes: requests pages
- Web routes → Site pages: dispatches
- Site pages → Public pages: renders
- Visitor → Contact handling: submits inquiry
- Web routes → Catalogue actions: dispatches catalogue
- Catalogue actions → Catalogue records: queries and saves
- Catalogue actions → Image storage: stores images
- Catalogue actions → Category display: renders category
- Administrator → Auth routes: requests access
- Auth routes → Session handling: dispatches
- Session handling → Login page: renders login
- Administrator → Catalogue actions: adds creations
- Auth routes → Registration: dispatches registration
- Registration → User records: creates user
- Auth routes → Profile management: dispatches profile
- Profile management → User records: updates or deletes
