# pradeep-polishetty/smartmeet architecture

> Architecture diagram of the GitHub repository pradeep-polishetty/smartmeet, 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/pradeep-polishetty/smartmeet
- Repository: https://github.com/pradeep-polishetty/smartmeet

## Overview

CodeDoc turns uploaded videos or supplied content into editable, AI-generated documentation, then supports export and project-based retrieval. The primary workflow is upload and transcribe, convert the transcript to editable HTML, generate and refine documentation, then export or save it. Other documented capabilities include multi-video topic-overlap detection and speech playback. The backend routes and frontend orchestration are sampled, but some route implementations and UI handlers are omitted; uncertain internal wiring is therefore not shown.

Main entry points: [`frontend/src/App.jsx`](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx) (Workflow UI), [`backend/server.js`](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js) (Video Transcription), [`frontend/src/LandingPage.jsx`](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/LandingPage.jsx) (Landing Page), [`backend/models.js`](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/models.js) (Project and Document Models)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_authoring["Authoring Workflow"]
  node_app["Workflow UI<br/>[App.jsx]"]
  node_landing["Landing Page<br/>[LandingPage.jsx]"]
  node_overlap_ui["Overlap Review<br/>[OverlapModal.jsx]"]
  node_edit_preview["Edit and Preview<br/>[App.jsx]"]
end

subgraph group_generation["AI Processing"]
  node_video_api["Video Transcription<br/>[server.js]"]
  node_deepgram{{"Deepgram"}}
  node_html_api["Transcript to HTML<br/>[server.js]"]
  node_doc_api["Doc Generation<br/>[server.js]"]
  node_refine_api["Doc Refinement<br/>[server.js]"]
  node_overlap_api["Overlap Detection<br/>[server.js]"]
  node_groq{{"Groq API"}}
end

subgraph group_exports["Export and Playback"]
  node_export_api["Document Export<br/>[server.js]"]
  node_speech["Speech Playback<br/>[App.jsx]"]
  node_web_speech{{"Web Speech API"}}
end

subgraph group_persistence["Project Storage"]
  node_saved_ui["Saved Documents<br/>[SavedDocuments.jsx]"]
  node_storage_api["Project and Document API<br/>[server.js]"]
  node_models["Project and Document Models<br/>[models.js]"]
  node_mongo[("MongoDB")]
end

node_creator(("Creator"))

node_creator -->|"starts at"| node_landing
node_landing -->|"opens workflow"| node_app
node_creator -->|"provides content"| node_app
node_app -->|"uploads video"| node_video_api
node_video_api -->|"transcribes audio"| node_deepgram
node_video_api -->|"returns transcript"| node_app
node_app -->|"submits transcript"| node_html_api
node_html_api -->|"requests HTML"| node_groq
node_html_api -->|"returns HTML"| node_app
node_app -->|"passes content"| node_edit_preview
node_edit_preview -->|"edits content"| node_app
node_app -->|"requests documentation"| node_doc_api
node_doc_api -->|"generates document"| node_groq
node_doc_api -->|"returns document"| node_app
node_app -->|"sends refinement"| node_refine_api
node_refine_api -->|"refines document"| node_groq
node_app -->|"submits transcripts"| node_overlap_api
node_overlap_api -->|"analyzes topics"| node_groq
node_app -->|"shows overlaps"| node_overlap_ui
node_app -->|"requests file export"| node_export_api
node_app -->|"starts playback"| node_speech
node_speech -->|"speaks document"| node_web_speech
node_app -->|"saves document"| node_storage_api
node_saved_ui -->|"loads and deletes"| node_storage_api
node_storage_api -->|"uses schemas"| node_models
node_models -->|"reads and writes"| node_mongo

click node_app "https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx"
click node_landing "https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/LandingPage.jsx"
click node_overlap_ui "https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/components/OverlapModal.jsx"
click node_video_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_html_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_doc_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_refine_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_overlap_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_edit_preview "https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx"
click node_export_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_speech "https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx"
click node_saved_ui "https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/SavedDocuments.jsx"
click node_storage_api "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js"
click node_models "https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/models.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_landing,node_overlap_ui,node_edit_preview toneBlue
class node_video_api,node_deepgram,node_html_api,node_doc_api,node_refine_api,node_overlap_api,node_groq toneAmber
class node_export_api,node_speech,node_web_speech toneMint
class node_saved_ui,node_storage_api,node_models,node_mongo toneRose
class node_creator toneIndigo
```

## Components

### Authoring Workflow

- [Workflow UI](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx): `frontend/src/App.jsx`
- [Landing Page](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/LandingPage.jsx): `frontend/src/LandingPage.jsx`
- [Overlap Review](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/components/OverlapModal.jsx): `frontend/src/components/OverlapModal.jsx`
- [Edit and Preview](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx): `frontend/src/App.jsx`

### AI Processing

- [Video Transcription](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- **Deepgram**
- [Transcript to HTML](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- [Doc Generation](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- [Doc Refinement](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- [Overlap Detection](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- **Groq API**

### Export and Playback

- [Document Export](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- [Speech Playback](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/App.jsx): `frontend/src/App.jsx`
- **Web Speech API**

### Project Storage

- [Saved Documents](https://github.com/pradeep-polishetty/smartmeet/blob/main/frontend/src/SavedDocuments.jsx): `frontend/src/SavedDocuments.jsx`
- [Project and Document API](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/server.js): `backend/server.js`
- [Project and Document Models](https://github.com/pradeep-polishetty/smartmeet/blob/main/backend/models.js): `backend/models.js`
- **MongoDB**

### Other components

- **Creator**

## Connections

- Creator → Landing Page: starts at
- Landing Page → Workflow UI: opens workflow
- Creator → Workflow UI: provides content
- Workflow UI → Video Transcription: uploads video
- Video Transcription → Deepgram: transcribes audio
- Video Transcription → Workflow UI: returns transcript
- Workflow UI → Transcript to HTML: submits transcript
- Transcript to HTML → Groq API: requests HTML
- Transcript to HTML → Workflow UI: returns HTML
- Workflow UI → Edit and Preview: passes content
- Edit and Preview → Workflow UI: edits content
- Workflow UI → Doc Generation: requests documentation
- Doc Generation → Groq API: generates document
- Doc Generation → Workflow UI: returns document
- Workflow UI → Doc Refinement: sends refinement
- Doc Refinement → Groq API: refines document
- Workflow UI → Overlap Detection: submits transcripts
- Overlap Detection → Groq API: analyzes topics
- Workflow UI → Overlap Review: shows overlaps
- Workflow UI → Document Export: requests file export
- Workflow UI → Speech Playback: starts playback
- Speech Playback → Web Speech API: speaks document
- Workflow UI → Project and Document API: saves document
- Saved Documents → Project and Document API: loads and deletes
- Project and Document API → Project and Document Models: uses schemas
- Project and Document Models → MongoDB: reads and writes
