# danishyaseen-dev/zennou-version-nexqora architecture

> Architecture diagram of the GitHub repository danishyaseen-dev/zennou-version-nexqora, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/danishyaseen-dev/zennou-version-nexqora
- Repository: https://github.com/danishyaseen-dev/zennou-version-nexqora

## Overview

Nexqora is a multi-channel HR and business-operations platform: employees and managers use a web portal or mobile app for HR tasks, while HR/admin staff manage workforce workflows. The backend exposes API routes for HR and operations; major capabilities include attendance, leave, payroll, recruitment, documents, notifications, AI assistance, and workflow automation. The graph includes the documented workflow engine and document-storage path. Source excerpts are incomplete, so unsampled capability links are shown only where the index or explicit documentation supports them.

Main entry points: [`modules/hr/backend/router.py`](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/router.py) (HR API routes), [`api/main.py`](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/api/main.py) (API application), [`workflows/engine.py`](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/engine.py) (Workflow engine), [`core/db_pool.py`](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/db_pool.py) (PostgreSQL access)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_clients["User clients"]
  node_web["Web portal<br/>[App.jsx]"]
  node_mobile["Mobile app<br/>[App.js]"]
end

subgraph group_api["API and services"]
  node_api_entry["API application<br/>[main.py]"]
  node_hr_routes["HR API routes<br/>[router.py]"]
  node_ops_routes["Operations routes<br/>[router.py]"]
  node_operations["Operations service<br/>[service.py]"]
end

subgraph group_hr["Workforce capabilities"]
  node_hr_service["HR service<br/>[service.py]"]
  node_attendance_leave["Attendance and leave<br/>[router.py]"]
  node_payroll["Payroll<br/>[payroll_engine.py]"]
  node_recruitment["Recruitment<br/>[runner.py]"]
  node_documents["Document management<br/>[service.py]"]
  node_notifications["Notifications<br/>[service.py]"]
end

subgraph group_platform["Shared platform"]
  node_auth["Authentication<br/>[auth.py]"]
  node_db[("PostgreSQL access<br/>[db_pool.py]")]
  node_storage[("Object storage<br/>[storage.py]")]
end

subgraph group_automation["AI and workflows"]
  node_workflow_engine["Workflow engine<br/>[engine.py]"]
  node_workflow_steps["Workflow steps<br/>[steps.py]"]
  node_workflow_defs["Workflow definitions<br/>[definitions.py]"]
  node_ai["AI assistant and RAG<br/>[ai_assistant.py]"]
  node_llm["LLM services<br/>[llm.py]"]
end

node_employee(("Employee / manager"))
node_minio[("MinIO")]
node_postgres[("PostgreSQL")]

node_employee -->|"uses"| node_web
node_employee -->|"uses"| node_mobile
node_web -.->|"requests"| node_api_entry
node_mobile -.->|"requests"| node_api_entry
node_api_entry -->|"registers"| node_hr_routes
node_api_entry -->|"registers"| node_ops_routes
node_hr_routes -->|"authenticates"| node_auth
node_hr_routes -->|"handles"| node_attendance_leave
node_hr_routes -->|"uses"| node_payroll
node_hr_routes -->|"dispatches"| node_recruitment
node_hr_routes -->|"dispatches"| node_ai
node_hr_routes -->|"starts"| node_workflow_engine
node_hr_routes -.->|"routes to"| node_documents
node_hr_routes -.->|"routes to"| node_notifications
node_ops_routes -->|"calls"| node_operations
node_operations -->|"delegates to"| node_hr_service
node_workflow_engine -->|"loads"| node_workflow_defs
node_workflow_engine -->|"dispatches"| node_workflow_steps
node_workflow_steps -->|"calls"| node_llm
node_ai -->|"uses"| node_workflow_engine
node_documents -->|"stores files"| node_storage
node_documents -->|"stores metadata"| node_db
node_storage -->|"reads and writes"| node_minio
node_db -->|"queries"| node_postgres
node_hr_routes -.->|"queries"| node_db
node_notifications -->|"persists"| node_db

click node_web "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/frontend/src/App.jsx"
click node_mobile "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/nexqora-mobile/App.js"
click node_api_entry "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/api/main.py"
click node_hr_routes "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/router.py"
click node_ops_routes "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/operations/backend/router.py"
click node_hr_service "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/service.py"
click node_attendance_leave "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/router.py"
click node_payroll "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/payroll_engine.py"
click node_recruitment "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/automation/runner.py"
click node_documents "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/documents/backend/service.py"
click node_notifications "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/notifications/service.py"
click node_operations "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/operations/backend/service.py"
click node_workflow_engine "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/engine.py"
click node_workflow_steps "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/steps.py"
click node_workflow_defs "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/definitions.py"
click node_ai "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/ai_assistant.py"
click node_llm "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/llm.py"
click node_auth "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/auth.py"
click node_db "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/db_pool.py"
click node_storage "https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/storage.py"

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_web,node_mobile toneBlue
class node_api_entry,node_hr_routes,node_ops_routes,node_operations,node_minio,node_postgres toneAmber
class node_hr_service,node_attendance_leave,node_payroll,node_recruitment,node_documents,node_notifications toneMint
class node_auth,node_db,node_storage toneRose
class node_workflow_engine,node_workflow_steps,node_workflow_defs,node_ai,node_llm,node_employee toneIndigo
```

## Components

### User clients

- [Web portal](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/frontend/src/App.jsx): `core/frontend/src/App.jsx`
- [Mobile app](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/nexqora-mobile/App.js): `nexqora-mobile/App.js`

### API and services

- [API application](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/api/main.py): `api/main.py`
- [HR API routes](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/router.py): `modules/hr/backend/router.py`
- [Operations routes](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/operations/backend/router.py): `modules/operations/backend/router.py`
- [Operations service](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/operations/backend/service.py): `modules/operations/backend/service.py`

### Workforce capabilities

- [HR service](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/service.py): `modules/hr/backend/service.py`
- [Attendance and leave](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/router.py): `modules/hr/backend/router.py`
- [Payroll](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/payroll_engine.py): `modules/hr/backend/payroll_engine.py`
- [Recruitment](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/automation/runner.py): `modules/hr/backend/automation/runner.py`
- [Document management](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/documents/backend/service.py): `modules/documents/backend/service.py`
- [Notifications](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/notifications/service.py): `modules/hr/backend/notifications/service.py`

### Shared platform

- [Authentication](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/auth.py): `core/auth.py`
- [PostgreSQL access](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/db_pool.py): `core/db_pool.py`
- [Object storage](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/core/storage.py): `core/storage.py`

### AI and workflows

- [Workflow engine](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/engine.py): `workflows/engine.py`
- [Workflow steps](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/steps.py): `workflows/steps.py`
- [Workflow definitions](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/definitions.py): `workflows/definitions.py`
- [AI assistant and RAG](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/modules/hr/backend/ai_assistant.py): `modules/hr/backend/ai_assistant.py`
- [LLM services](https://github.com/danishyaseen-dev/zennou-version-nexqora/blob/master/workflows/llm.py): `workflows/llm.py`

### Other components

- **Employee / manager**
- **MinIO**
- **PostgreSQL**

## Connections

- Employee / manager → Web portal: uses (evidence: `core/frontend/src/App.jsx`)
- Employee / manager → Mobile app: uses (evidence: `nexqora-mobile/App.js`)
- Web portal → API application: requests
- Mobile app → API application: requests
- API application → HR API routes: registers (evidence: `api/main.py`)
- API application → Operations routes: registers (evidence: `api/main.py`)
- HR API routes → Authentication: authenticates (evidence: `modules/hr/backend/router.py`)
- HR API routes → Attendance and leave: handles (evidence: `modules/hr/backend/router.py`)
- HR API routes → Payroll: uses (evidence: `modules/hr/backend/router.py`)
- HR API routes → Recruitment: dispatches (evidence: `modules/hr/backend/router.py`)
- HR API routes → AI assistant and RAG: dispatches (evidence: `modules/hr/backend/router.py`)
- HR API routes → Workflow engine: starts (evidence: `modules/hr/backend/router.py`)
- HR API routes → Document management: routes to
- HR API routes → Notifications: routes to
- Operations routes → Operations service: calls (evidence: `modules/operations/backend/router.py`)
- Operations service → HR service: delegates to (evidence: `modules/operations/backend/service.py`)
- Workflow engine → Workflow definitions: loads (evidence: `workflows/engine.py`)
- Workflow engine → Workflow steps: dispatches (evidence: `workflows/engine.py`)
- Workflow steps → LLM services: calls (evidence: `workflows/steps.py`)
- AI assistant and RAG → Workflow engine: uses (evidence: `modules/hr/backend/router.py`)
- Document management → Object storage: stores files (evidence: `modules/documents/backend/service.py`)
- Document management → PostgreSQL access: stores metadata (evidence: `modules/documents/backend/service.py`)
- Object storage → MinIO: reads and writes (evidence: `core/storage.py`)
- PostgreSQL access → PostgreSQL: queries (evidence: `core/db_pool.py`)
- HR API routes → PostgreSQL access: queries (evidence: `modules/hr/backend/router.py`)
- Notifications → PostgreSQL access: persists
