Developer Documentation¶
This section covers setting up the Intune Assignments Manager for local development, understanding the codebase architecture, and contributing changes. The app is a client-side SvelteKit SPA that authenticates with Microsoft Entra ID and communicates directly with the Microsoft Graph API from the browser.
-
Clone the repo, install dependencies, configure Azure credentials, and run the dev server.
-
System flow, routing, state management, type system, caching strategy, and bulk assignment execution.
-
Deep dive into the Graph client factory: request, fetchAll, batch methods, error hierarchy, and known API limitations.
-
MSAL lazy-loading, login flow, token acquisition, incremental consent, and permission tiers.
-
Code style, component conventions, import rules, and guidelines for adding features.
Tech Stack¶
| Technology | Version | Purpose |
|---|---|---|
| SvelteKit | 2.x | Application framework and routing |
| Svelte | 5.x | UI components with runes reactivity ($state, $derived, $effect, $props) |
| TypeScript | Strict mode | Type safety with noUnusedLocals and noUnusedParameters |
| Tailwind CSS | 4.x | Utility-first styling with OKLCH color tokens |
| MSAL.js | @azure/msal-browser | OAuth2 PKCE authentication against Microsoft Entra ID |
| Zod | 3.x | Runtime validation of Graph API responses |
| Lucide | lucide-svelte | Icon library |
| pnpm | Enforced via .npmrc | Package manager |
| Cloudflare Pages | adapter-cloudflare | Deployment target (no Node.js built-ins) |