# ai-egao/phixora_webapp architecture

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

- Interactive diagram: https://gitdiagram.com/ai-egao/phixora_webapp
- Repository: https://github.com/ai-egao/phixora_webapp

## Overview

Phixora is an ASP.NET Web Forms service marketplace for clients, workers, and administrators. The evidenced worker workflow is worker login, session-backed dashboard access, appointment lookup by profession, and location submission; a separate tracking page looks up the saved location by worker ID. Client and worker registration, category and appointment pages, and dashboards indicate broader marketplace capabilities, but their detailed behavior is not described in the supplied README (which is empty) or shown in excerpts. SQL Server is accessed directly by page handlers; the graph omits unverified links for unsampled pages.

Main entry points: [`Phixora_WebApp/Global.asax.cs`](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Global.asax.cs) (Application startup), [`Phixora_WebApp/WorkerLogin.aspx.cs`](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerLogin.aspx.cs) (Worker login), [`Phixora_WebApp/WorkerDashboard.aspx.cs`](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerDashboard.aspx.cs) (Worker dashboard), [`Phixora_WebApp/RegisterClient.aspx.cs`](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/RegisterClient.aspx.cs) (Client registration)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_startup["Application startup"]
  node_global["Application startup<br/>[Global.asax.cs]"]
  node_routes["Friendly routes<br/>[RouteConfig.cs]"]
  node_webapi["API routes<br/>[WebApiConfig.cs]"]
  node_bundles["Script resources<br/>[BundleConfig.cs]"]
end

subgraph group_identity["Accounts"]
  node_clientreg["Client registration"]
  node_workerreg["Worker registration"]
  node_clientlogin["Client login"]
  node_workerlogin["Worker login"]
  node_adminlogin["Admin login<br/>[AdminLogin.aspx.cs]"]
end

subgraph group_marketplace["Marketplace"]
  node_admin["Admin dashboard"]
  node_clientdash["Client dashboard"]
  node_categories["Service categories<br/>[Categories.aspx.cs]"]
  node_appointments["Appointments"]
  node_home["Marketplace home<br/>[Default.aspx.cs]"]
  node_contact["Contact page<br/>[Contact.aspx.cs]"]
  node_about["About page<br/>[aboutpage.aspx.cs]"]
end

subgraph group_worker["Worker operations"]
  node_workerhome["Worker dashboard"]
end

subgraph group_tracking["Location tracking"]
  node_location["Worker location page"]
  node_track["Track worker"]
end

node_request(("Web request"))
node_db[("Phixora SQL database")]

node_global -->|"registers API"| node_webapi
node_global -->|"registers routes"| node_routes
node_global -->|"registers bundles"| node_bundles
node_workerlogin -->|"checks credentials"| node_db
node_workerlogin -->|"redirects on success"| node_workerhome
node_workerhome -->|"loads appointments; saves location"| node_db
node_workerreg -->|"loads categories; registers workers"| node_db
node_clientreg -->|"registers and lists clients"| node_db
node_track -->|"reads worker location"| node_db

click node_global "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Global.asax.cs"
click node_routes "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/App_Start/RouteConfig.cs"
click node_webapi "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/App_Start/WebApiConfig.cs"
click node_bundles "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/App_Start/BundleConfig.cs"
click node_clientreg "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/RegisterClient.aspx.cs"
click node_workerreg "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/RegisterWorker.aspx.cs"
click node_clientlogin "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/ClientLogin.aspx.cs"
click node_workerlogin "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerLogin.aspx.cs"
click node_adminlogin "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/AdminLogin.aspx.cs"
click node_admin "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/AdminDashboard.aspx.cs"
click node_clientdash "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/ClientDashboard.aspx.cs"
click node_categories "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Categories.aspx.cs"
click node_appointments "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Appointments.aspx.cs"
click node_home "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Default.aspx.cs"
click node_workerhome "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerDashboard.aspx.cs"
click node_location "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerLocation.aspx.cs"
click node_track "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/TrackWorker.aspx.cs"
click node_contact "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Contact.aspx.cs"
click node_about "https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/aboutpage.aspx.cs"

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_global,node_routes,node_webapi,node_bundles toneBlue
class node_clientreg,node_workerreg,node_clientlogin,node_workerlogin,node_adminlogin,node_db toneAmber
class node_admin,node_clientdash,node_categories,node_appointments,node_home,node_contact,node_about,node_request toneMint
class node_workerhome toneRose
class node_location,node_track toneIndigo
```

## Components

### Application startup

- [Application startup](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Global.asax.cs): `Phixora_WebApp/Global.asax.cs`
- [Friendly routes](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/App_Start/RouteConfig.cs): `Phixora_WebApp/App_Start/RouteConfig.cs`
- [API routes](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/App_Start/WebApiConfig.cs): `Phixora_WebApp/App_Start/WebApiConfig.cs`
- [Script resources](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/App_Start/BundleConfig.cs): `Phixora_WebApp/App_Start/BundleConfig.cs`

### Accounts

- [Client registration](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/RegisterClient.aspx.cs): `Phixora_WebApp/RegisterClient.aspx.cs`
- [Worker registration](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/RegisterWorker.aspx.cs): `Phixora_WebApp/RegisterWorker.aspx.cs`
- [Client login](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/ClientLogin.aspx.cs): `Phixora_WebApp/ClientLogin.aspx.cs`
- [Worker login](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerLogin.aspx.cs): `Phixora_WebApp/WorkerLogin.aspx.cs`
- [Admin login](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/AdminLogin.aspx.cs): `Phixora_WebApp/AdminLogin.aspx.cs`

### Marketplace

- [Admin dashboard](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/AdminDashboard.aspx.cs): `Phixora_WebApp/AdminDashboard.aspx.cs`
- [Client dashboard](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/ClientDashboard.aspx.cs): `Phixora_WebApp/ClientDashboard.aspx.cs`
- [Service categories](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Categories.aspx.cs): `Phixora_WebApp/Categories.aspx.cs`
- [Appointments](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Appointments.aspx.cs): `Phixora_WebApp/Appointments.aspx.cs`
- [Marketplace home](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Default.aspx.cs): `Phixora_WebApp/Default.aspx.cs`
- [Contact page](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/Contact.aspx.cs): `Phixora_WebApp/Contact.aspx.cs`
- [About page](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/aboutpage.aspx.cs): `Phixora_WebApp/aboutpage.aspx.cs`

### Worker operations

- [Worker dashboard](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerDashboard.aspx.cs): `Phixora_WebApp/WorkerDashboard.aspx.cs`

### Location tracking

- [Worker location page](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/WorkerLocation.aspx.cs): `Phixora_WebApp/WorkerLocation.aspx.cs`
- [Track worker](https://github.com/ai-egao/phixora_webapp/blob/master/Phixora_WebApp/TrackWorker.aspx.cs): `Phixora_WebApp/TrackWorker.aspx.cs`

### Other components

- **Web request**
- **Phixora SQL database**

## Connections

- Application startup → API routes: registers API (evidence: `Phixora_WebApp/Global.asax.cs`)
- Application startup → Friendly routes: registers routes (evidence: `Phixora_WebApp/Global.asax.cs`)
- Application startup → Script resources: registers bundles (evidence: `Phixora_WebApp/Global.asax.cs`)
- Worker login → Phixora SQL database: checks credentials (evidence: `Phixora_WebApp/WorkerLogin.aspx.cs`)
- Worker login → Worker dashboard: redirects on success (evidence: `Phixora_WebApp/WorkerLogin.aspx.cs`)
- Worker dashboard → Phixora SQL database: loads appointments; saves location (evidence: `Phixora_WebApp/WorkerDashboard.aspx.cs`)
- Worker registration → Phixora SQL database: loads categories; registers workers (evidence: `Phixora_WebApp/RegisterWorker.aspx.cs`)
- Client registration → Phixora SQL database: registers and lists clients (evidence: `Phixora_WebApp/RegisterClient.aspx.cs`)
- Track worker → Phixora SQL database: reads worker location (evidence: `Phixora_WebApp/TrackWorker.aspx.cs`)
