# rocket-cloud234/career-ai-copilot architecture

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

- Interactive diagram: https://gitdiagram.com/rocket-cloud234/career-ai-copilot
- Repository: https://github.com/rocket-cloud234/career-ai-copilot

## Overview

CareerAI is a web-based career and learning copilot. A user supplies profile details and career questions through the main interface; the app can generate career options and personalized roadmaps, then support topic-based teaching and roadmap-scoped mock interviews. Resume analysis is a separate capability. The sampled code confirms the main page orchestrates several API requests and that the interview endpoint reads roadmap data. Other UI wiring and the contents of the JSON data files were not sampled, so uncertain connections are omitted.

Main entry points: [`app/page.js`](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/page.js) (App orchestrator), [`app/components/Main.jsx`](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/Main.jsx) (Career workspace), [`app/api/mock-interview/route.js`](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/mock-interview/route.js) (Mock interviewer), [`app/api/preprocess-career-path/route.js`](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/preprocess-career-path/route.js) (Career options prep)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_interface["User interface"]
  node_page["App orchestrator<br/>[page.js]"]
  node_main["Career workspace<br/>[Main.jsx]"]
  node_profile["Profile editor<br/>[AboutYou.jsx]"]
  node_profilepopup["Profile view<br/>[ProfilePopup.jsx]"]
  node_roadmapsidebar["Roadmap progress<br/>[RoadmapSidebar.jsx]"]
  node_roadmappopup["Roadmap viewer<br/>[RoadmapPopup.jsx]"]
  node_skillpopup["Skill gap view<br/>[SkillGapPopup.jsx]"]
end

subgraph group_planning["Career planning"]
  node_careerchat["Career guidance<br/>[route.js]"]
  node_careerprep["Career options prep<br/>[route.js]"]
  node_roadmapbuilder["Roadmap generator<br/>[route.js]"]
  node_resume["Resume analysis<br/>[route.js]"]
end

subgraph group_learning["Learning support"]
  node_teacher["Topic tutor<br/>[route.js]"]
  node_interview["Mock interviewer<br/>[route.js]"]
end

subgraph group_state["Application data"]
  node_db[("Profile database<br/>[database.json]")]
  node_roadmapdata[("Roadmap store<br/>[roadmaps.json]")]
end

node_user(("User"))
node_gemini{{"Gemini AI"}}

node_user -->|"uses"| node_main
node_main -->|"sends actions"| node_page
node_page -->|"requests guidance"| node_careerchat
node_page -->|"requests options"| node_careerprep
node_main -->|"prepares options"| node_careerprep
node_page -->|"requests roadmap"| node_roadmapbuilder
node_page -->|"sends lesson query"| node_teacher
node_page -->|"starts interview"| node_interview
node_page -->|"submits resume"| node_resume
node_page -->|"opens editor"| node_profile
node_page -->|"shows profile"| node_profilepopup
node_page -->|"shows roadmap"| node_roadmappopup
node_page -->|"shows skill gaps"| node_skillpopup
node_page -->|"shows progress"| node_roadmapsidebar
node_careerchat -->|"generates guidance"| node_gemini
node_careerprep -->|"generates options"| node_gemini
node_roadmapbuilder -->|"generates roadmap"| node_gemini
node_teacher -->|"generates lesson"| node_gemini
node_interview -->|"generates questions"| node_gemini
node_resume -->|"analyzes resume"| node_gemini
node_interview -->|"reads roadmap"| node_roadmapdata

click node_page "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/page.js"
click node_main "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/Main.jsx"
click node_profile "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/AboutYou.jsx"
click node_profilepopup "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/ProfilePopup.jsx"
click node_roadmapsidebar "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/RoadmapSidebar.jsx"
click node_roadmappopup "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/RoadmapPopup.jsx"
click node_skillpopup "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/SkillGapPopup.jsx"
click node_careerchat "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/career-path/route.js"
click node_careerprep "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/preprocess-career-path/route.js"
click node_roadmapbuilder "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/roadmap-builder/route.js"
click node_resume "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/analyze-resume/route.js"
click node_teacher "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/chat/route.js"
click node_interview "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/mock-interview/route.js"
click node_db "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/data/database.json"
click node_roadmapdata "https://github.com/rocket-cloud234/career-ai-copilot/blob/main/data/roadmaps.json"

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_page,node_main,node_profile,node_profilepopup,node_roadmapsidebar,node_roadmappopup,node_skillpopup,node_user toneBlue
class node_careerchat,node_careerprep,node_roadmapbuilder,node_resume toneAmber
class node_teacher,node_interview toneMint
class node_db,node_roadmapdata toneRose
class node_gemini toneIndigo
```

## Components

### User interface

- [App orchestrator](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/page.js): `app/page.js`
- [Career workspace](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/Main.jsx): `app/components/Main.jsx`
- [Profile editor](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/AboutYou.jsx): `app/components/AboutYou.jsx`
- [Profile view](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/ProfilePopup.jsx): `app/components/ProfilePopup.jsx`
- [Roadmap progress](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/RoadmapSidebar.jsx): `app/components/RoadmapSidebar.jsx`
- [Roadmap viewer](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/RoadmapPopup.jsx): `app/components/RoadmapPopup.jsx`
- [Skill gap view](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/components/SkillGapPopup.jsx): `app/components/SkillGapPopup.jsx`

### Career planning

- [Career guidance](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/career-path/route.js): `app/api/career-path/route.js`
- [Career options prep](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/preprocess-career-path/route.js): `app/api/preprocess-career-path/route.js`
- [Roadmap generator](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/roadmap-builder/route.js): `app/api/roadmap-builder/route.js`
- [Resume analysis](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/analyze-resume/route.js): `app/api/analyze-resume/route.js`

### Learning support

- [Topic tutor](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/chat/route.js): `app/api/chat/route.js`
- [Mock interviewer](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/app/api/mock-interview/route.js): `app/api/mock-interview/route.js`

### Application data

- [Profile database](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/data/database.json): `data/database.json`
- [Roadmap store](https://github.com/rocket-cloud234/career-ai-copilot/blob/main/data/roadmaps.json): `data/roadmaps.json`

### Other components

- **User**
- **Gemini AI**

## Connections

- User → Career workspace: uses
- Career workspace → App orchestrator: sends actions
- App orchestrator → Career guidance: requests guidance
- App orchestrator → Career options prep: requests options
- Career workspace → Career options prep: prepares options
- App orchestrator → Roadmap generator: requests roadmap
- App orchestrator → Topic tutor: sends lesson query
- App orchestrator → Mock interviewer: starts interview
- App orchestrator → Resume analysis: submits resume
- App orchestrator → Profile editor: opens editor
- App orchestrator → Profile view: shows profile
- App orchestrator → Roadmap viewer: shows roadmap
- App orchestrator → Skill gap view: shows skill gaps
- App orchestrator → Roadmap progress: shows progress
- Career guidance → Gemini AI: generates guidance
- Career options prep → Gemini AI: generates options
- Roadmap generator → Gemini AI: generates roadmap
- Topic tutor → Gemini AI: generates lesson
- Mock interviewer → Gemini AI: generates questions
- Resume analysis → Gemini AI: analyzes resume
- Mock interviewer → Roadmap store: reads roadmap
