# haevneu/worksuite-frontend architecture

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

- Interactive diagram: https://gitdiagram.com/haevneu/worksuite-frontend
- Repository: https://github.com/haevneu/worksuite-frontend

## Overview

Despite the README title, the supplied tree is a React/TypeScript WorkSuite frontend: users enter through the application shell, navigate authenticated workspaces, and use domain pages that present results from backend services or local tools. Major areas include tickets and time tracking, VCS and review workflows, data utilities, and settings; AI features can connect to a separately configured local model. The database-query page and several service implementations were sampled; routing and other feature wiring are represented only where the tree supports them.

Main entry points: [`src/App.tsx`](https://github.com/haevneu/worksuite-frontend/blob/main/src/App.tsx) (App shell), [`src/pages/DatabaseQuery.page.tsx`](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/DatabaseQuery.page.tsx) (Database query), [`src/feature/ai-assistant`](https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/ai-assistant) (AI assistant), [`src/services/network/database.service.ts`](https://github.com/haevneu/worksuite-frontend/blob/main/src/services/network/database.service.ts) (Database service)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["Application access"]
  node_shell["App shell<br/>[App.tsx]"]
  node_auth["Authentication<br/>[AuthContext.tsx]"]
end

subgraph group_work["Work tracking"]
  node_dashboard["Dashboard<br/>[Dashboard.page.tsx]"]
  node_tickets["Tickets<br/>[Tickets.page.tsx]"]
  node_time["Time tracking"]
  node_weekly["Team meetings"]
  node_vcs["VCS workspace<br/>[Vcs.page.tsx]"]
  node_reviews["Review workflows"]
end

subgraph group_dev["Developer tools"]
  node_dbquery["Database query"]
  node_tools["Developer tools<br/>[Tools.page.tsx]"]
  node_logs["Log analysis"]
  node_stacktrace["Stacktrace analysis"]
  node_ai["AI assistant"]
end

subgraph group_platform["Services and settings"]
  node_dbservice["Database service"]
  node_settings["Settings<br/>[Settings.page.tsx]"]
  node_network["Network services<br/>[network.service.ts]"]
end

node_user(("User"))
node_backend[("WorkSuite backend")]
node_localmodel["Local model service"]

node_user -->|"uses"| node_shell
node_shell -->|"checks access"| node_auth
node_shell -->|"routes to"| node_dashboard
node_shell -->|"routes to"| node_tickets
node_shell -->|"routes to"| node_time
node_shell -->|"routes to"| node_weekly
node_shell -->|"routes to"| node_vcs
node_shell -->|"routes to"| node_reviews
node_shell -->|"routes to"| node_dbquery
node_shell -->|"routes to"| node_tools
node_shell -->|"routes to"| node_logs
node_shell -->|"routes to"| node_stacktrace
node_shell -->|"routes to"| node_ai
node_shell -->|"routes to"| node_settings
node_dbquery -->|"queries via"| node_dbservice
node_dbservice -->|"requests data"| node_backend
node_network -->|"sends requests"| node_backend
node_ai -.->|"prompts optionally"| node_localmodel

click node_shell "https://github.com/haevneu/worksuite-frontend/blob/main/src/App.tsx"
click node_auth "https://github.com/haevneu/worksuite-frontend/blob/main/src/context/AuthContext.tsx"
click node_dashboard "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Dashboard.page.tsx"
click node_tickets "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Tickets.page.tsx"
click node_time "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/TimeTracking.page.tsx"
click node_weekly "https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/team-meeting"
click node_vcs "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Vcs.page.tsx"
click node_reviews "https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/mr-review"
click node_dbquery "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/DatabaseQuery.page.tsx"
click node_dbservice "https://github.com/haevneu/worksuite-frontend/blob/main/src/services/network/database.service.ts"
click node_tools "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Tools.page.tsx"
click node_logs "https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/log"
click node_stacktrace "https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/stacktrace-analyzer"
click node_ai "https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/ai-assistant"
click node_settings "https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Settings.page.tsx"
click node_network "https://github.com/haevneu/worksuite-frontend/blob/main/src/services/network/network.service.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_shell,node_auth,node_user toneBlue
class node_dashboard,node_tickets,node_time,node_weekly,node_vcs,node_reviews,node_backend toneAmber
class node_dbquery,node_tools,node_logs,node_stacktrace,node_ai toneMint
class node_dbservice,node_settings,node_network toneRose
class node_localmodel toneIndigo
```

## Components

### Application access

- [App shell](https://github.com/haevneu/worksuite-frontend/blob/main/src/App.tsx): `src/App.tsx`
- [Authentication](https://github.com/haevneu/worksuite-frontend/blob/main/src/context/AuthContext.tsx): `src/context/AuthContext.tsx`

### Work tracking

- [Dashboard](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Dashboard.page.tsx): `src/pages/Dashboard.page.tsx`
- [Tickets](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Tickets.page.tsx): `src/pages/Tickets.page.tsx`
- [Time tracking](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/TimeTracking.page.tsx): `src/pages/TimeTracking.page.tsx`
- [Team meetings](https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/team-meeting): `src/feature/team-meeting`
- [VCS workspace](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Vcs.page.tsx): `src/pages/Vcs.page.tsx`
- [Review workflows](https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/mr-review): `src/feature/mr-review`

### Developer tools

- [Database query](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/DatabaseQuery.page.tsx): `src/pages/DatabaseQuery.page.tsx`
- [Developer tools](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Tools.page.tsx): `src/pages/Tools.page.tsx`
- [Log analysis](https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/log): `src/feature/log`
- [Stacktrace analysis](https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/stacktrace-analyzer): `src/feature/stacktrace-analyzer`
- [AI assistant](https://github.com/haevneu/worksuite-frontend/tree/main/src/feature/ai-assistant): `src/feature/ai-assistant`

### Services and settings

- [Database service](https://github.com/haevneu/worksuite-frontend/blob/main/src/services/network/database.service.ts): `src/services/network/database.service.ts`
- [Settings](https://github.com/haevneu/worksuite-frontend/blob/main/src/pages/Settings.page.tsx): `src/pages/Settings.page.tsx`
- [Network services](https://github.com/haevneu/worksuite-frontend/blob/main/src/services/network/network.service.ts): `src/services/network/network.service.ts`

### Other components

- **User**
- **WorkSuite backend**
- **Local model service**

## Connections

- User → App shell: uses
- App shell → Authentication: checks access
- App shell → Dashboard: routes to
- App shell → Tickets: routes to
- App shell → Time tracking: routes to
- App shell → Team meetings: routes to
- App shell → VCS workspace: routes to
- App shell → Review workflows: routes to
- App shell → Database query: routes to
- App shell → Developer tools: routes to
- App shell → Log analysis: routes to
- App shell → Stacktrace analysis: routes to
- App shell → AI assistant: routes to
- App shell → Settings: routes to
- Database query → Database service: queries via
- Database service → WorkSuite backend: requests data
- Network services → WorkSuite backend: sends requests
- AI assistant → Local model service: prompts optionally
