# ever-co/ever-gauzy architecture

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

- Interactive diagram: https://gitdiagram.com/ever-co/ever-gauzy
- Repository: https://github.com/ever-co/ever-gauzy

## Overview

Ever Gauzy is a business-management platform spanning ERP, CRM, HRM, ATS, project work, and employee time/activity tracking. The main user workflow is through the authenticated web application: users enter the application, navigate business features, and use the platform’s API; the README also describes local desktop and server deployments. Desktop timer clients submit timesheets, activity, and screenshots to the API. The README documents broader feature areas than the sampled source verifies, so those are represented as capability areas without invented internal call chains.

Main entry points: [`apps/gauzy/src/app/app.routes.ts`](https://github.com/ever-co/ever-gauzy/blob/develop/apps/gauzy/src/app/app.routes.ts) (Web application), [`apps/desktop/src/app/app.service.ts`](https://github.com/ever-co/ever-gauzy/blob/develop/apps/desktop/src/app/app.service.ts) (Desktop application), [`apps/desktop-timer/src/app/app.service.ts`](https://github.com/ever-co/ever-gauzy/blob/develop/apps/desktop-timer/src/app/app.service.ts) (Desktop timer), [`packages/core/src/lib/pipeline/pipeline.controller.ts`](https://github.com/ever-co/ever-gauzy/blob/develop/packages/core/src/lib/pipeline/pipeline.controller.ts) (Sales pipelines)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_web["Web application"]
  node_webapp["Web application<br/>[app.routes.ts]"]
end

subgraph group_business["Business capabilities"]
  node_onboarding["Onboarding<br/>[app.routes.ts]"]
  node_work["Work management"]
  node_people["People and hiring"]
  node_customers["Customer management"]
  node_finance["Sales and finance"]
  node_insights["Reports and dashboards"]
end

subgraph group_services["Platform services"]
  node_api["Platform API<br/>[main.ts]"]
  node_pipeline["Sales pipelines"]
  node_token["Token validation"]
  node_plugins["Plugin registry"]
  node_datastore[("Platform data store")]
end

subgraph group_desktop["Desktop clients"]
  node_desktop["Desktop application<br/>[app.service.ts]"]
  node_timer["Desktop timer<br/>[app.service.ts]"]
  node_agent["Activity agent"]
end

node_user(("User"))
node_gauzyapi["Gauzy API"]

node_user -->|"uses"| node_webapp
node_webapp -->|"routes to"| node_onboarding
node_webapp -->|"routes to"| node_work
node_webapp -->|"routes to"| node_people
node_webapp -->|"routes to"| node_customers
node_webapp -->|"routes to"| node_finance
node_webapp -->|"routes to"| node_insights
node_desktop -->|"serves"| node_user
node_timer -->|"serves"| node_user
node_timer -->|"sends tracking data"| node_gauzyapi
node_desktop -->|"checks server"| node_gauzyapi
node_api -->|"exposes"| node_pipeline
node_pipeline -->|"reads and writes"| node_datastore
node_token -->|"validates against"| node_datastore
node_plugins -->|"searches"| node_datastore
node_agent -->|"syncs activities"| node_gauzyapi

click node_webapp "https://github.com/ever-co/ever-gauzy/blob/develop/apps/gauzy/src/app/app.routes.ts"
click node_onboarding "https://github.com/ever-co/ever-gauzy/blob/develop/apps/gauzy/src/app/app.routes.ts"
click node_work "https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages"
click node_people "https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages"
click node_customers "https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages"
click node_finance "https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages"
click node_insights "https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages"
click node_api "https://github.com/ever-co/ever-gauzy/blob/develop/apps/api/src/main.ts"
click node_pipeline "https://github.com/ever-co/ever-gauzy/blob/develop/packages/core/src/lib/pipeline/pipeline.controller.ts"
click node_token "https://github.com/ever-co/ever-gauzy/blob/develop/packages/core/src/lib/token/queries/handlers/validate-token-query.handler.ts"
click node_plugins "https://github.com/ever-co/ever-gauzy/blob/develop/packages/plugins/registry/src/lib/application/plugin/queries/handlers/search-plugins-query.handler.ts"
click node_desktop "https://github.com/ever-co/ever-gauzy/blob/develop/apps/desktop/src/app/app.service.ts"
click node_timer "https://github.com/ever-co/ever-gauzy/blob/develop/apps/desktop-timer/src/app/app.service.ts"
click node_agent "https://github.com/ever-co/ever-gauzy/tree/develop/apps/agent/src/main"

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_webapp,node_user toneBlue
class node_onboarding,node_work,node_people,node_customers,node_finance,node_insights toneAmber
class node_api,node_pipeline,node_token,node_plugins,node_datastore,node_gauzyapi toneMint
class node_desktop,node_timer,node_agent toneRose
```

## Components

### Web application

- [Web application](https://github.com/ever-co/ever-gauzy/blob/develop/apps/gauzy/src/app/app.routes.ts): `apps/gauzy/src/app/app.routes.ts`

### Business capabilities

- [Onboarding](https://github.com/ever-co/ever-gauzy/blob/develop/apps/gauzy/src/app/app.routes.ts): `apps/gauzy/src/app/app.routes.ts`
- [Work management](https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages): `apps/gauzy/src/app/pages`
- [People and hiring](https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages): `apps/gauzy/src/app/pages`
- [Customer management](https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages): `apps/gauzy/src/app/pages`
- [Sales and finance](https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages): `apps/gauzy/src/app/pages`
- [Reports and dashboards](https://github.com/ever-co/ever-gauzy/tree/develop/apps/gauzy/src/app/pages): `apps/gauzy/src/app/pages`

### Platform services

- [Platform API](https://github.com/ever-co/ever-gauzy/blob/develop/apps/api/src/main.ts): `apps/api/src/main.ts`
- [Sales pipelines](https://github.com/ever-co/ever-gauzy/blob/develop/packages/core/src/lib/pipeline/pipeline.controller.ts): `packages/core/src/lib/pipeline/pipeline.controller.ts`
- [Token validation](https://github.com/ever-co/ever-gauzy/blob/develop/packages/core/src/lib/token/queries/handlers/validate-token-query.handler.ts): `packages/core/src/lib/token/queries/handlers/validate-token-query.handler.ts`
- [Plugin registry](https://github.com/ever-co/ever-gauzy/blob/develop/packages/plugins/registry/src/lib/application/plugin/queries/handlers/search-plugins-query.handler.ts): `packages/plugins/registry/src/lib/application/plugin/queries/handlers/search-plugins-query.handler.ts`
- **Platform data store**

### Desktop clients

- [Desktop application](https://github.com/ever-co/ever-gauzy/blob/develop/apps/desktop/src/app/app.service.ts): `apps/desktop/src/app/app.service.ts`
- [Desktop timer](https://github.com/ever-co/ever-gauzy/blob/develop/apps/desktop-timer/src/app/app.service.ts): `apps/desktop-timer/src/app/app.service.ts`
- [Activity agent](https://github.com/ever-co/ever-gauzy/tree/develop/apps/agent/src/main): `apps/agent/src/main`

### Other components

- **User**
- **Gauzy API**

## Connections

- User → Web application: uses
- Web application → Onboarding: routes to
- Web application → Work management: routes to
- Web application → People and hiring: routes to
- Web application → Customer management: routes to
- Web application → Sales and finance: routes to
- Web application → Reports and dashboards: routes to
- Desktop application → User: serves
- Desktop timer → User: serves
- Desktop timer → Gauzy API: sends tracking data
- Desktop application → Gauzy API: checks server
- Platform API → Sales pipelines: exposes
- Sales pipelines → Platform data store: reads and writes
- Token validation → Platform data store: validates against
- Plugin registry → Platform data store: searches
- Activity agent → Gauzy API: syncs activities
