# ksabonis-pfi/fusionflow architecture

> Architecture diagram of the GitHub repository ksabonis-pfi/fusionflow, 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/ksabonis-pfi/fusionflow
- Repository: https://github.com/ksabonis-pfi/fusionflow

## Overview

CloudConnect is an internal lifecycle platform for UCaaS/CCaaS sales, delivery, and customer success. Users enter through routed workspaces, progress opportunities through assessment and scoping into managed implementation projects, then track post-go-live accounts in Optimize. Separate capabilities cover prospecting, roadmap requests, support, CRM, and collaboration integrations. The graph preserves those documented branches, while sampled source confirms routing, task handling, and scheduled worker behavior; unsampled subsystem links are omitted rather than inferred.

Main entry points: [`src/client/pages/ProjectDetailPage.tsx`](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/ProjectDetailPage.tsx) (Project workspace), [`src/client/pages/SolutionDetailPage.tsx`](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/SolutionDetailPage.tsx) (Solutions pipeline), [`src/client/pages/OptimizeAccountPage.tsx`](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/OptimizeAccountPage.tsx) (Optimize accounts), [`src/client/app/router.tsx`](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/app/router.tsx) (Workspace routing)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_entry["Application entry"]
  node_router["Workspace routing<br/>[router.tsx]"]
end

subgraph group_sales["Sales and solutioning"]
  node_solution["Solutions pipeline"]
  node_assessment["Needs assessment"]
  node_labor["Labor estimation"]
  node_sow["Scope and handoff<br/>[buildHtml.ts]"]
  node_prospecting["AI prospecting"]
end

subgraph group_delivery["Implementation delivery"]
  node_project["Project workspace"]
  node_phases["Phases and tasks<br/>[tasks.ts]"]
  node_documents["Project documents"]
  node_timeline["Project timeline"]
  node_roadmap["Roadmap requests<br/>[RoadmapPage.tsx]"]
end

subgraph group_success["Customer success"]
  node_optimize["Optimize accounts"]
  node_impact["Impact assessments"]
  node_utilization["Utilization snapshots<br/>[zoomService.ts]"]
end

subgraph group_platform["Support and integrations"]
  node_support["Support cases<br/>[support.ts]"]
  node_cloudsupport["Cloud support"]
  node_dynamics["Dynamics CRM<br/>[dynamicsService.ts]"]
  node_ringcentral["RingCentral data"]
  node_zoom["Zoom data<br/>[zoomService.ts]"]
  node_database[("Application database<br/>[client.ts]")]
  node_worker["Scheduled jobs<br/>[index.ts]"]
end

node_users(("Team and clients"))

node_users -->|"opens workspace"| node_router
node_router -->|"routes to"| node_solution
node_router -->|"routes to"| node_project
node_solution -->|"assesses readiness"| node_assessment
node_solution -->|"estimates effort"| node_labor
node_solution -->|"scopes work"| node_sow
node_solution -->|"creates delivery"| node_project
node_users -->|"researches prospects"| node_prospecting
node_project -->|"manages work"| node_phases
node_project -->|"accesses files"| node_documents
node_project -->|"views timeline"| node_timeline
node_users -->|"submits requests"| node_roadmap
node_project -->|"graduates to"| node_optimize
node_optimize -->|"reviews impact"| node_impact
node_optimize -->|"tracks utilization"| node_utilization
node_users -->|"opens cases"| node_support
node_users -->|"uses calculator"| node_cloudsupport
node_project -->|"links CRM account"| node_dynamics
node_project -->|"views tenant data"| node_ringcentral
node_optimize -->|"pulls utilization"| node_zoom
node_worker -->|"fetches snapshots"| node_utilization
node_worker -->|"stores snapshots"| node_database
node_phases -->|"reads and writes"| node_database

click node_router "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/app/router.tsx"
click node_solution "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/SolutionDetailPage.tsx"
click node_assessment "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/routes/needsAssessments.ts"
click node_labor "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/solutioning/LaborEstimateView.tsx"
click node_sow "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/shared/sowTemplate/buildHtml.ts"
click node_prospecting "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/aiProspectingService.ts"
click node_project "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/ProjectDetailPage.tsx"
click node_phases "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/routes/tasks.ts"
click node_documents "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/documents/ProjectDocuments.tsx"
click node_timeline "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/timeline/ProjectTimeline.tsx"
click node_roadmap "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/RoadmapPage.tsx"
click node_optimize "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/OptimizeAccountPage.tsx"
click node_impact "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/optimize/ImpactAssessmentWizard.tsx"
click node_utilization "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/zoomService.ts"
click node_support "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/routes/support.ts"
click node_cloudsupport "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/CloudSupportPage.tsx"
click node_dynamics "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/dynamicsService.ts"
click node_ringcentral "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/ringCentralService.ts"
click node_zoom "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/zoomService.ts"
click node_database "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/db/client.ts"
click node_worker "https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/index.ts"

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_router,node_users toneBlue
class node_solution,node_assessment,node_labor,node_sow,node_prospecting toneAmber
class node_project,node_phases,node_documents,node_timeline,node_roadmap toneMint
class node_optimize,node_impact,node_utilization toneRose
class node_support,node_cloudsupport,node_dynamics,node_ringcentral,node_zoom,node_database,node_worker toneIndigo
```

## Components

### Application entry

- [Workspace routing](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/app/router.tsx): `src/client/app/router.tsx`

### Sales and solutioning

- [Solutions pipeline](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/SolutionDetailPage.tsx): `src/client/pages/SolutionDetailPage.tsx`
- [Needs assessment](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/routes/needsAssessments.ts): `src/server/routes/needsAssessments.ts`
- [Labor estimation](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/solutioning/LaborEstimateView.tsx): `src/client/components/solutioning/LaborEstimateView.tsx`
- [Scope and handoff](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/shared/sowTemplate/buildHtml.ts): `src/shared/sowTemplate/buildHtml.ts`
- [AI prospecting](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/aiProspectingService.ts): `src/server/services/aiProspectingService.ts`

### Implementation delivery

- [Project workspace](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/ProjectDetailPage.tsx): `src/client/pages/ProjectDetailPage.tsx`
- [Phases and tasks](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/routes/tasks.ts): `src/server/routes/tasks.ts`
- [Project documents](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/documents/ProjectDocuments.tsx): `src/client/components/documents/ProjectDocuments.tsx`
- [Project timeline](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/timeline/ProjectTimeline.tsx): `src/client/components/timeline/ProjectTimeline.tsx`
- [Roadmap requests](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/RoadmapPage.tsx): `src/client/pages/RoadmapPage.tsx`

### Customer success

- [Optimize accounts](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/OptimizeAccountPage.tsx): `src/client/pages/OptimizeAccountPage.tsx`
- [Impact assessments](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/components/optimize/ImpactAssessmentWizard.tsx): `src/client/components/optimize/ImpactAssessmentWizard.tsx`
- [Utilization snapshots](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/zoomService.ts): `src/server/services/zoomService.ts`

### Support and integrations

- [Support cases](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/routes/support.ts): `src/server/routes/support.ts`
- [Cloud support](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/client/pages/CloudSupportPage.tsx): `src/client/pages/CloudSupportPage.tsx`
- [Dynamics CRM](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/dynamicsService.ts): `src/server/services/dynamicsService.ts`
- [RingCentral data](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/ringCentralService.ts): `src/server/services/ringCentralService.ts`
- [Zoom data](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/services/zoomService.ts): `src/server/services/zoomService.ts`
- [Application database](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/db/client.ts): `src/server/db/client.ts`
- [Scheduled jobs](https://github.com/ksabonis-pfi/fusionflow/blob/main/src/server/index.ts): `src/server/index.ts`

### Other components

- **Team and clients**

## Connections

- Team and clients → Workspace routing: opens workspace (evidence: `src/client/app/router.tsx`)
- Workspace routing → Solutions pipeline: routes to (evidence: `src/client/app/router.tsx`)
- Workspace routing → Project workspace: routes to (evidence: `src/client/app/router.tsx`)
- Solutions pipeline → Needs assessment: assesses readiness (evidence: `README.md`)
- Solutions pipeline → Labor estimation: estimates effort (evidence: `README.md`)
- Solutions pipeline → Scope and handoff: scopes work (evidence: `README.md`)
- Solutions pipeline → Project workspace: creates delivery (evidence: `README.md`)
- Team and clients → AI prospecting: researches prospects (evidence: `README.md`)
- Project workspace → Phases and tasks: manages work (evidence: `README.md`)
- Project workspace → Project documents: accesses files (evidence: `src/client/pages/ProjectDetailPage.tsx`)
- Project workspace → Project timeline: views timeline (evidence: `src/client/pages/ProjectDetailPage.tsx`)
- Team and clients → Roadmap requests: submits requests (evidence: `README.md`)
- Project workspace → Optimize accounts: graduates to (evidence: `README.md`)
- Optimize accounts → Impact assessments: reviews impact (evidence: `README.md`)
- Optimize accounts → Utilization snapshots: tracks utilization (evidence: `README.md`)
- Team and clients → Support cases: opens cases (evidence: `README.md`)
- Team and clients → Cloud support: uses calculator
- Project workspace → Dynamics CRM: links CRM account (evidence: `README.md`)
- Project workspace → RingCentral data: views tenant data (evidence: `src/client/pages/ProjectDetailPage.tsx`)
- Optimize accounts → Zoom data: pulls utilization (evidence: `README.md`)
- Scheduled jobs → Utilization snapshots: fetches snapshots (evidence: `src/server/index.ts`)
- Scheduled jobs → Application database: stores snapshots (evidence: `src/server/index.ts`)
- Phases and tasks → Application database: reads and writes (evidence: `src/server/routes/tasks.ts`)
