# srinath3001/fixflow-college-equipment-repair-tracker architecture

> Architecture diagram of the GitHub repository srinath3001/fixflow-college-equipment-repair-tracker, 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/srinath3001/fixflow-college-equipment-repair-tracker
- Repository: https://github.com/srinath3001/fixflow-college-equipment-repair-tracker

## Overview

FixFlow is a facilities-maintenance application for reporting and managing equipment complaints. Users navigate a dashboard, submit and track complaints, and manage technicians and equipment; the client uses query hooks and API services to communicate with an Express API, whose feature modules access PostgreSQL through Prisma. The source index supports the main complaint and server routing relationships; several client pages and feature implementations were not excerpted, so their internal links are omitted where unverified.

Main entry points: [`FixFlow/client/src/app/router.jsx`](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/app/router.jsx) (Page router), [`FixFlow/server/src/app.js`](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/app.js) (API application), [`FixFlow/server/src/config/prisma.js`](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/config/prisma.js) (PostgreSQL), [`FixFlow/client/src/services/complaintService.js`](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/services/complaintService.js) (Complaint API client)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_client["Web client"]
  node_app["Client app<br/>[App.jsx]"]
  node_router["Page router<br/>[router.jsx]"]
  node_complaint_pages["Complaint views"]
  node_dashboard_page["Dashboard<br/>[DashboardPage.jsx]"]
  node_equipment_page["Equipment view<br/>[EquipmentPage.jsx]"]
  node_technician_page["Technician view"]
  node_complaint_hooks["Complaint query hooks<br/>[useComplaints.js]"]
  node_complaint_client["Complaint API client"]
  node_api_transport["API transport<br/>[api.js]"]
end

subgraph group_complaints["Complaint handling"]
  node_complaint_routes["Complaint routes"]
  node_complaint_controller["Complaint controller"]
  node_complaint_service["Complaint service"]
end

subgraph group_operations["Operations API"]
  node_equipment_api["Equipment API"]
  node_technician_api["Technician API"]
  node_dashboard_api["Dashboard API"]
  node_server_app["API application<br/>[app.js]"]
end

subgraph group_storage["Persistence"]
  node_database[("PostgreSQL<br/>[prisma.js]")]
end

node_user(("User"))
node_http_api{{"HTTP API"}}

node_user -.->|"uses"| node_app
node_app -->|"loads"| node_router
node_router -->|"routes to"| node_complaint_pages
node_router -->|"routes to"| node_dashboard_page
node_router -->|"routes to"| node_equipment_page
node_router -->|"routes to"| node_technician_page
node_complaint_pages -->|"uses"| node_complaint_hooks
node_complaint_hooks -->|"calls"| node_complaint_client
node_complaint_client -->|"calls"| node_api_transport
node_complaint_client -->|"requests complaints"| node_http_api
node_http_api -.->|"reaches"| node_server_app
node_server_app -->|"mounts"| node_complaint_routes
node_server_app -->|"mounts"| node_equipment_api
node_server_app -->|"mounts"| node_technician_api
node_server_app -->|"mounts"| node_dashboard_api
node_complaint_routes -->|"dispatches"| node_complaint_controller
node_complaint_controller -->|"calls"| node_complaint_service
node_complaint_service -->|"queries"| node_database
node_equipment_api -.->|"uses"| node_database
node_technician_api -.->|"uses"| node_database
node_dashboard_api -.->|"uses"| node_database

click node_app "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/app/App.jsx"
click node_router "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/app/router.jsx"
click node_complaint_pages "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/tree/main/FixFlow/client/src/pages"
click node_dashboard_page "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/pages/DashboardPage.jsx"
click node_equipment_page "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/pages/EquipmentPage.jsx"
click node_technician_page "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/pages/TechniciansPage.jsx"
click node_complaint_hooks "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/hooks/useComplaints.js"
click node_complaint_client "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/services/complaintService.js"
click node_api_transport "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/services/api.js"
click node_complaint_routes "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/complaints/complaint.routes.js"
click node_complaint_controller "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/complaints/complaint.controller.js"
click node_complaint_service "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/complaints/complaint.service.js"
click node_equipment_api "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/equipment/equipment.controller.js"
click node_technician_api "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/technicians/technician.controller.js"
click node_dashboard_api "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/dashboard/dashboard.controller.js"
click node_server_app "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/app.js"
click node_database "https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/config/prisma.js"

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_router,node_complaint_pages,node_dashboard_page,node_equipment_page,node_technician_page,node_complaint_hooks,node_complaint_client,node_api_transport,node_user toneBlue
class node_complaint_routes,node_complaint_controller,node_complaint_service toneAmber
class node_equipment_api,node_technician_api,node_dashboard_api,node_server_app,node_http_api toneMint
class node_database toneRose
```

## Components

### Web client

- [Client app](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/app/App.jsx): `FixFlow/client/src/app/App.jsx`
- [Page router](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/app/router.jsx): `FixFlow/client/src/app/router.jsx`
- [Complaint views](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/tree/main/FixFlow/client/src/pages): `FixFlow/client/src/pages`
- [Dashboard](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/pages/DashboardPage.jsx): `FixFlow/client/src/pages/DashboardPage.jsx`
- [Equipment view](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/pages/EquipmentPage.jsx): `FixFlow/client/src/pages/EquipmentPage.jsx`
- [Technician view](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/pages/TechniciansPage.jsx): `FixFlow/client/src/pages/TechniciansPage.jsx`
- [Complaint query hooks](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/hooks/useComplaints.js): `FixFlow/client/src/hooks/useComplaints.js`
- [Complaint API client](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/services/complaintService.js): `FixFlow/client/src/services/complaintService.js`
- [API transport](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/client/src/services/api.js): `FixFlow/client/src/services/api.js`

### Complaint handling

- [Complaint routes](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/complaints/complaint.routes.js): `FixFlow/server/src/modules/complaints/complaint.routes.js`
- [Complaint controller](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/complaints/complaint.controller.js): `FixFlow/server/src/modules/complaints/complaint.controller.js`
- [Complaint service](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/complaints/complaint.service.js): `FixFlow/server/src/modules/complaints/complaint.service.js`

### Operations API

- [Equipment API](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/equipment/equipment.controller.js): `FixFlow/server/src/modules/equipment/equipment.controller.js`
- [Technician API](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/technicians/technician.controller.js): `FixFlow/server/src/modules/technicians/technician.controller.js`
- [Dashboard API](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/modules/dashboard/dashboard.controller.js): `FixFlow/server/src/modules/dashboard/dashboard.controller.js`
- [API application](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/app.js): `FixFlow/server/src/app.js`

### Persistence

- [PostgreSQL](https://github.com/srinath3001/fixflow-college-equipment-repair-tracker/blob/main/FixFlow/server/src/config/prisma.js): `FixFlow/server/src/config/prisma.js`

### Other components

- **User**
- **HTTP API**

## Connections

- User → Client app: uses
- Client app → Page router: loads (evidence: `FixFlow/client/src/app/App.jsx`)
- Page router → Complaint views: routes to (evidence: `FixFlow/client/src/app/router.jsx`)
- Page router → Dashboard: routes to (evidence: `FixFlow/client/src/app/router.jsx`)
- Page router → Equipment view: routes to (evidence: `FixFlow/client/src/app/router.jsx`)
- Page router → Technician view: routes to (evidence: `FixFlow/client/src/app/router.jsx`)
- Complaint views → Complaint query hooks: uses (evidence: `FixFlow/client/src/pages/ComplaintDetailPage.jsx`)
- Complaint query hooks → Complaint API client: calls (evidence: `FixFlow/client/src/hooks/useComplaints.js`)
- Complaint API client → API transport: calls (evidence: `FixFlow/client/src/services/complaintService.js`)
- Complaint API client → HTTP API: requests complaints (evidence: `FixFlow/client/src/services/complaintService.js`)
- HTTP API → API application: reaches
- API application → Complaint routes: mounts (evidence: `FixFlow/server/src/app.js`)
- API application → Equipment API: mounts (evidence: `FixFlow/server/src/app.js`)
- API application → Technician API: mounts (evidence: `FixFlow/server/src/app.js`)
- API application → Dashboard API: mounts (evidence: `FixFlow/server/src/app.js`)
- Complaint routes → Complaint controller: dispatches (evidence: `FixFlow/server/src/modules/complaints/complaint.routes.js`)
- Complaint controller → Complaint service: calls (evidence: `FixFlow/server/src/modules/complaints/complaint.controller.js`)
- Complaint service → PostgreSQL: queries (evidence: `FixFlow/server/src/modules/complaints/complaint.service.js`)
- Equipment API → PostgreSQL: uses
- Technician API → PostgreSQL: uses
- Dashboard API → PostgreSQL: uses
