# honey-singh716/resolvex architecture

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

- Interactive diagram: https://gitdiagram.com/honey-singh716/resolvex
- Repository: https://github.com/honey-singh716/resolvex

## Overview

ResolveX is a multi-tenant issue and service-management SaaS. Users authenticate, select or join an organization, then report and track tickets; organization staff manage issues and membership, while platform administrators verify and oversee organizations. The frontend routes role-specific workspaces through a typed API client to FastAPI endpoints, which enforce authentication and operate on PostgreSQL-backed domain records. Notifications and platform administration are distinct supporting capabilities. The graph emphasizes documented routes and sampled calls; several important backend handlers are indexed but unsampled, so their internal call relationships are left out.

Main entry points: [`backend/app/api/v1/router.py`](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/router.py) (API router), [`frontend/src/services/api.ts`](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/services/api.ts) (Typed API client), [`frontend/src/App.tsx`](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/App.tsx) (Route application), [`backend/app/api/v1/client_issues.py`](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/client_issues.py) (Client issue routes)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_frontend["Frontend experience"]
  node_app["Route application<br/>[App.tsx]"]
  node_authctx["Authentication state<br/>[AuthContext.tsx]"]
  node_orgctx["Organization context<br/>[OrgContext.tsx]"]
  node_clientdash["Client ticket dashboard"]
  node_ticketdetail["Client ticket detail"]
  node_orgworkspace["Issue and org workspaces"]
  node_platformui["Platform admin console"]
  node_apiclient["Typed API client<br/>[api.ts]"]
end

subgraph group_identity["Identity and tenancy"]
  node_authroutes["Authentication routes<br/>[auth.py]"]
  node_orgcontextapi["Organization routes<br/>[organizations.py]"]
end

subgraph group_tickets["Issue management"]
  node_clientissues["Client issue routes<br/>[client_issues.py]"]
  node_issuesapi["Issue routes<br/>[issues.py]"]
end

subgraph group_admin["Administration and notifications"]
  node_notificationsapi["Notification routes<br/>[notifications.py]"]
  node_platformapi["Platform routes<br/>[platform.py]"]
  node_notifyservice["Notification service<br/>[notifications.py]"]
end

subgraph group_persistence["Backend foundation"]
  node_router["API router<br/>[router.py]"]
  node_deps["Auth dependencies<br/>[deps.py]"]
  node_security["JWT security<br/>[security.py]"]
  node_config["Runtime configuration<br/>[config.py]"]
  node_session["Database session<br/>[session.py]"]
  node_db[("PostgreSQL")]
  node_models[("Domain records")]
  node_schemas["API schemas"]
end

node_user(("User"))

node_user -->|"uses"| node_app
node_app -->|"provides auth"| node_authctx
node_app -->|"routes to"| node_clientdash
node_app -->|"routes to"| node_orgworkspace
node_app -->|"routes to"| node_platformui
node_authctx -->|"calls auth"| node_apiclient
node_orgctx -->|"loads organizations"| node_apiclient
node_clientdash -->|"requests tickets"| node_apiclient
node_ticketdetail -->|"requests ticket"| node_apiclient
node_platformui -->|"calls admin API"| node_apiclient
node_apiclient -.->|"HTTP API"| node_router
node_router -->|"registers"| node_authroutes
node_router -->|"registers"| node_clientissues
node_router -->|"registers"| node_orgcontextapi
node_router -->|"registers"| node_issuesapi
node_router -->|"registers"| node_notificationsapi
node_router -->|"registers"| node_platformapi
node_authroutes -->|"uses dependencies"| node_deps
node_deps -->|"decodes token"| node_security
node_deps -->|"loads user"| node_session
node_session -->|"gets database URL"| node_config
node_session -->|"opens sessions"| node_db
node_clientissues -->|"notifies comment"| node_notifyservice
node_clientissues -->|"reads and writes"| node_models
node_orgcontextapi -->|"reads and writes"| node_models
node_notifyservice -->|"reads and writes"| node_models
node_clientissues -->|"validates and responds"| node_schemas

click node_app "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/App.tsx"
click node_authctx "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/context/AuthContext.tsx"
click node_orgctx "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/context/OrgContext.tsx"
click node_clientdash "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/pages/ClientDashboardPage.tsx"
click node_ticketdetail "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/pages/ClientTicketDetailsPage.tsx"
click node_orgworkspace "https://github.com/honey-singh716/resolvex/tree/main/frontend/src/pages"
click node_platformui "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/pages/PlatformAdminPage.tsx"
click node_apiclient "https://github.com/honey-singh716/resolvex/blob/main/frontend/src/services/api.ts"
click node_authroutes "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/auth.py"
click node_orgcontextapi "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/organizations.py"
click node_clientissues "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/client_issues.py"
click node_issuesapi "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/issues.py"
click node_notificationsapi "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/notifications.py"
click node_platformapi "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/platform.py"
click node_notifyservice "https://github.com/honey-singh716/resolvex/blob/main/backend/app/services/notifications.py"
click node_router "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/router.py"
click node_deps "https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/deps.py"
click node_security "https://github.com/honey-singh716/resolvex/blob/main/backend/app/core/security.py"
click node_config "https://github.com/honey-singh716/resolvex/blob/main/backend/app/core/config.py"
click node_session "https://github.com/honey-singh716/resolvex/blob/main/backend/app/db/session.py"
click node_models "https://github.com/honey-singh716/resolvex/tree/main/backend/app/db/models"
click node_schemas "https://github.com/honey-singh716/resolvex/tree/main/backend/app/schemas"

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_authctx,node_orgctx,node_clientdash,node_ticketdetail,node_orgworkspace,node_platformui,node_apiclient,node_user toneBlue
class node_authroutes,node_orgcontextapi toneAmber
class node_clientissues,node_issuesapi toneMint
class node_notificationsapi,node_platformapi,node_notifyservice toneRose
class node_router,node_deps,node_security,node_config,node_session,node_db,node_models,node_schemas toneIndigo
```

## Components

### Frontend experience

- [Route application](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/App.tsx): `frontend/src/App.tsx`
- [Authentication state](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/context/AuthContext.tsx): `frontend/src/context/AuthContext.tsx`
- [Organization context](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/context/OrgContext.tsx): `frontend/src/context/OrgContext.tsx`
- [Client ticket dashboard](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/pages/ClientDashboardPage.tsx): `frontend/src/pages/ClientDashboardPage.tsx`
- [Client ticket detail](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/pages/ClientTicketDetailsPage.tsx): `frontend/src/pages/ClientTicketDetailsPage.tsx`
- [Issue and org workspaces](https://github.com/honey-singh716/resolvex/tree/main/frontend/src/pages): `frontend/src/pages`
- [Platform admin console](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/pages/PlatformAdminPage.tsx): `frontend/src/pages/PlatformAdminPage.tsx`
- [Typed API client](https://github.com/honey-singh716/resolvex/blob/main/frontend/src/services/api.ts): `frontend/src/services/api.ts`

### Identity and tenancy

- [Authentication routes](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/auth.py): `backend/app/api/v1/auth.py`
- [Organization routes](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/organizations.py): `backend/app/api/v1/organizations.py`

### Issue management

- [Client issue routes](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/client_issues.py): `backend/app/api/v1/client_issues.py`
- [Issue routes](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/issues.py): `backend/app/api/v1/issues.py`

### Administration and notifications

- [Notification routes](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/notifications.py): `backend/app/api/v1/notifications.py`
- [Platform routes](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/platform.py): `backend/app/api/v1/platform.py`
- [Notification service](https://github.com/honey-singh716/resolvex/blob/main/backend/app/services/notifications.py): `backend/app/services/notifications.py`

### Backend foundation

- [API router](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/v1/router.py): `backend/app/api/v1/router.py`
- [Auth dependencies](https://github.com/honey-singh716/resolvex/blob/main/backend/app/api/deps.py): `backend/app/api/deps.py`
- [JWT security](https://github.com/honey-singh716/resolvex/blob/main/backend/app/core/security.py): `backend/app/core/security.py`
- [Runtime configuration](https://github.com/honey-singh716/resolvex/blob/main/backend/app/core/config.py): `backend/app/core/config.py`
- [Database session](https://github.com/honey-singh716/resolvex/blob/main/backend/app/db/session.py): `backend/app/db/session.py`
- **PostgreSQL**
- [Domain records](https://github.com/honey-singh716/resolvex/tree/main/backend/app/db/models): `backend/app/db/models`
- [API schemas](https://github.com/honey-singh716/resolvex/tree/main/backend/app/schemas): `backend/app/schemas`

### Other components

- **User**

## Connections

- User → Route application: uses (evidence: `frontend/src/App.tsx`)
- Route application → Authentication state: provides auth (evidence: `frontend/src/App.tsx`)
- Route application → Client ticket dashboard: routes to (evidence: `frontend/src/App.tsx`)
- Route application → Issue and org workspaces: routes to (evidence: `frontend/src/App.tsx`)
- Route application → Platform admin console: routes to (evidence: `frontend/src/App.tsx`)
- Authentication state → Typed API client: calls auth (evidence: `frontend/src/context/AuthContext.tsx`)
- Organization context → Typed API client: loads organizations (evidence: `frontend/src/context/OrgContext.tsx`)
- Client ticket dashboard → Typed API client: requests tickets (evidence: `frontend/src/pages/ClientDashboardPage.tsx`)
- Client ticket detail → Typed API client: requests ticket (evidence: `frontend/src/pages/ClientTicketDetailsPage.tsx`)
- Platform admin console → Typed API client: calls admin API (evidence: `frontend/src/pages/PlatformAdminPage.tsx`)
- Typed API client → API router: HTTP API
- API router → Authentication routes: registers (evidence: `backend/app/api/v1/router.py`)
- API router → Client issue routes: registers (evidence: `backend/app/api/v1/router.py`)
- API router → Organization routes: registers (evidence: `backend/app/api/v1/router.py`)
- API router → Issue routes: registers (evidence: `backend/app/api/v1/router.py`)
- API router → Notification routes: registers (evidence: `backend/app/api/v1/router.py`)
- API router → Platform routes: registers (evidence: `backend/app/api/v1/router.py`)
- Authentication routes → Auth dependencies: uses dependencies (evidence: `backend/app/api/v1/auth.py`)
- Auth dependencies → JWT security: decodes token (evidence: `backend/app/api/deps.py`)
- Auth dependencies → Database session: loads user (evidence: `backend/app/api/deps.py`)
- Database session → Runtime configuration: gets database URL (evidence: `backend/app/db/session.py`)
- Database session → PostgreSQL: opens sessions (evidence: `backend/app/db/session.py`)
- Client issue routes → Notification service: notifies comment (evidence: `backend/app/api/v1/client_issues.py`)
- Client issue routes → Domain records: reads and writes (evidence: `backend/app/api/v1/client_issues.py`)
- Organization routes → Domain records: reads and writes (evidence: `backend/app/api/v1/organizations.py`)
- Notification service → Domain records: reads and writes (evidence: `backend/app/services/notifications.py`)
- Client issue routes → API schemas: validates and responds (evidence: `backend/app/api/v1/client_issues.py`)
