# Module Overview — Ninja Nexus

## Modulkort

| Modul | Placering | Primær rolle | Fase |
|-------|-----------|--------------|------|
| Nexus Shell | `source/nexus-shell/` | Bruger-desktop og login UI | 2 |
| Nexus Agent | `source/nexus-agent/` | Enhedsservice, politikker, sync | 1–4 |
| Nexus Control Center | `source/nexus-control-center/` | Cloud API og admin UI | 1 |
| Nexus Identity | `source/nexus-identity/` | Auth, brugere, MFA | 3 |
| Nexus Device Management | `source/nexus-device-management/` | MDM, inventar, politikker | 4 |
| Nexus App Center | `source/nexus-app-center/` | Intern app store | 7 |
| Nexus Update Service | `source/nexus-update-service/` | Platform- og app-opdateringer | 6 |
| Nexus Remote Support | `source/nexus-remote-support/` | Fjernsupport | 5 |
| Shared | `source/shared/` | Fælles biblioteker | 1+ |

---

## Nexus Shell

**Hvad:** Desktop-applikation der erstatter Windows-skrivebordet.

**Ansvar:**
- Login-skærm og session-håndtering
- Desktop-layout (baggrund, ikoner, widgets)
- Taskbar/dock med åbne apps og systemstatus
- Launcher (søg, seneste, pinned apps)
- App Center-visning
- Notifikationscenter
- Systemindstillinger (Nexus-specifikke, ikke Windows)

**Afhængigheder:** Identity (login), Agent (politikker, status), App Center (katalog)

**Spec:** [modules/NEXUS_SHELL.md](../modules/NEXUS_SHELL.md)

---

## Nexus Agent

**Hvad:** Windows Service der kører på hver enhed.

**Ansvar:**
- Registrering og heartbeat mod Control Center
- Hardware/software-inventar
- Politik-engine (anvend og rapporter compliance)
- Software installation og opdatering
- Remote support tunnel
- Lokal data-cache (offline)
- Device certificate management

**Afhængigheder:** Control Center (kommandoer), Device Management (politikker), Update Service (pakker)

**Spec:** [modules/NEXUS_AGENT.md](../modules/NEXUS_AGENT.md)

---

## Nexus Control Center

**Hvad:** Central cloud-baseret administrationsplatform.

**Ansvar:**
- API Gateway for alle klienter og admin
- Admin web UI (dashboard, enheder, brugere, politikker)
- Event bus og notifikationer
- Audit log aggregation
- Tenant management (fase 8)
- Rapportering og analytics

**Afhængigheder:** Alle backend-moduler, Identity (auth), PostgreSQL, Redis

**Spec:** [modules/NEXUS_CONTROL_CENTER.md](../modules/NEXUS_CONTROL_CENTER.md)

---

## Nexus Identity

**Hvad:** Identity and Access Management platform.

**Ansvar:**
- Brugerregistrering og -styring
- Roller og permissions (RBAC)
- MFA (TOTP, FIDO2, push)
- OAuth2/OIDC provider for Shell og tredjepartsapps
- Session management
- Password policies og reset flows
- Federation med AD/Azure AD (fremtid)

**Afhængigheder:** Control Center (hosting/integration), PostgreSQL

**Spec:** [modules/IDENTITY.md](../modules/IDENTITY.md)

---

## Nexus Device Management

**Hvad:** Mobile Device Management (MDM) — tilpasset Nexus-økosystemet.

**Ansvar:**
- Enhedsregistrering og gruppering
- Politik-definition og -distribution
- Compliance-rapportering
- Device trust scoring
- Remote wipe / lock
- Konfigurationsprofiler

**Afhængigheder:** Agent (eksekvering), Control Center (UI), Identity (bruger-enhed binding)

**Spec:** [modules/DEVICE_MANAGEMENT.md](../modules/DEVICE_MANAGEMENT.md)

---

## Nexus App Center

**Hvad:** Intern enterprise app store.

**Ansvar:**
- App-katalog med metadata, ikoner, versioner
- Godkendelsesflow for nye apps
- Bruger-anmodninger om apps
- Integration med Update Service for installation
- App usage analytics
- Licensing tracking (fremtid)

**Afhængigheder:** Update Service (install), Shell (UI), Control Center (admin)

**Spec:** [modules/APP_CENTER.md](../modules/APP_CENTER.md)

---

## Nexus Update Service

**Hvad:** Håndtering af platform- og applikationsopdateringer.

**Ansvar:**
- Nexus platform-opdateringer (Shell, Agent)
- App package hosting og distribution
- Staged rollout (canary → broad)
- Rollback-mekanisme
- Delta-opdateringer (fremtid)
- Version compatibility matrix

**Afhængigheder:** Agent (install), Object Storage (pakker), Control Center (konfiguration)

**Spec:** [modules/UPDATE_SERVICE.md](../modules/UPDATE_SERVICE.md)

---

## Nexus Remote Support

**Hvad:** Sikker fjernsupport integreret i platformen.

**Ansvar:**
- Session-initiering (admin → bruger eller bruger → admin)
- Skærmdeling og remote control
- Remote terminal (PowerShell/CMD sandboxed)
- Session recording og audit
- File transfer (policy-kontrolleret)
- Bruger-samtykke-flow

**Afhængigheder:** Agent (tunnel), Control Center (session management), Identity (auth), Audit

**Spec:** [modules/REMOTE_SUPPORT.md](../modules/REMOTE_SUPPORT.md)

---

## Shared Libraries

**Hvad:** Fælles kode på tværs af alle moduler.

**Ansvar:**
- Protokol-definitioner (gRPC/REST contracts)
- Fælles datamodeller (Device, User, Policy, App)
- Kryptografi-hjælpere (cert, encryption)
- Logging og telemetry abstraktioner
- UI-komponentbibliotek (Shell + Control Center)
- Konfiguration og feature flags

**Placering:** `source/shared/`

---

## Modul-interaktionsmatrix

|  | Shell | Agent | Control | Identity | Device | App | Update | Remote |
|--|:-----:|:-----:|:-------:|:--------:|:------:|:---:|:------:|:------:|
| **Shell** | — | IPC | API | OIDC | — | API | — | — |
| **Agent** | IPC | — | mTLS | — | Policy | Install | Install | Tunnel |
| **Control** | API | mTLS | — | Host | API | API | API | API |
| **Identity** | OIDC | — | Host | — | — | — | — | Auth |
| **Device** | — | Policy | API | — | — | — | — | — |
| **App** | API | Install | API | — | — | — | Trigger | — |
| **Update** | — | Install | API | — | — | Trigger | — | — |
| **Remote** | — | Tunnel | API | Auth | — | — | — | — |

---

*Detaljerede specs: [modules/](../modules/)*
