Intune Companion
Progressive Web App zur Verwaltung von Intune-Geräten, Apps und Gruppen — direkt im Browser, ohne Installation.
Features
- Geräte — Liste mit Compliance-Status, Suche und Filter; Details mit Remote-Aktionen (Sync, Lock, Reboot, Retire), macOS Custom Attributes und LAPS-Passwort
- Apps — Übersicht mit Plattformfilter; Zuweisungsdetails und automatische Uninstall-Gruppen-Erstellung
- Gruppensuche — Verwendungsnachweis über Apps, Konfigurationen, Compliance Policies, Update Rings, Scripts und Autopilot Profile
- PWA — installierbar, Graph API Antworten 5 Minuten gecacht
Architektur
flowchart LR
subgraph github ["GitHub"]
direction TB
PR["Pull Request"] -->|"CI: Lint + Build"| MAIN["main"]
MAIN -->|"auto-deploy"| DEV_SWA
REL["Release PR\nrelease-please"] -->|"merge → tag vX.Y.Z"| PROD_SWA
end
subgraph azure_dev ["Azure — Dev Tenant"]
DEV_SWA["Static Web App\nDevelopment"]
end
subgraph azure_prod ["Azure — Prod Tenant"]
PROD_SWA["Static Web App\nProduction"]
end
subgraph runtime ["Browser"]
PWA["Intune Companion\nPWA"]
end
DEV_SWA & PROD_SWA -->|"serves"| PWA
PWA <-->|"MSAL / OAuth 2.0"| ENTRA["Entra ID"]
PWA -->|"Delegated API Calls"| GRAPH["Microsoft Graph API\nIntune · Apps · Groups"]
Quickstart (lokal)
npm install
npm run dev # → http://localhost:5173
Für die vollständige Einrichtung (App Registration, Azure Static Web App, CI/CD) → CONTRIBUTING.md
Tech Stack
| Frontend | React 19, TypeScript 5.9 strict, Vite 8 |
| UI | Fluent UI v9, servoIT Branding |
| Auth | MSAL (@azure/msal-browser + @azure/msal-react) |
| Data | Microsoft Graph API v1.0 + beta |
| PWA | vite-plugin-pwa, Workbox |
| Hosting | Azure Static Web Apps |
| CI/CD | GitHub Actions, release-please |