# Evaluering ## Hvad fungerede godt - SvelteKit gjorde det hurtigt at samle UI og backend i samme repo. - Login og beskyttede routes gav et klart brugerflow. - Projekter og tasks kan udvides uden at ændre arkitekturen meget. - GitHub App-installationsflowet (redirect → callback → repo selection → project link) er en komplet brugerrejse. - Callback'et håndterer manglende private key graceful uden at crashe. ## Hvad var udfordrende - GitHub App kræver en PEM-private key, som skal formateres korrekt i `.env` (enkelt linje, `\n` for line breaks). - Flere komponenter (callback, repo listing, issue sync) crashede uden private key — krævede `hasGitHubAppPrivateKey()` gates. - `githubRepositoryLink.installationId` forvekslede intern DB-id med GitHub's `installationId`, hvilket gav 404 ved issue-sync. - Rigtig GitHub-sync kræver provider-specifik auth og API-håndtering (JWT, access tokens, installation tokens). - Realtidsopdateringer skal afstemmes med deploy-miljø og connection limits. - Progressberegning skal være konsistent, når tasks ændres samtidigt. ## Hvordan kan SvelteKit bruges professionelt - Som ramme til interne værktøjer og dashboards, hvor SSR og form actions reducerer klient-kompleksitet. - Til applikationer med behov for hurtig første render og god SEO gennem SSR. - Til realtime-funktionalitet med SSE, hvor tunge websocket-løsninger ikke er nødvendige. - Sammen med Drizzle ORM til typesikker databaseadgang i full-stack TypeScript-projekter. - Til prototyper og MVP'er der skal kunne skaleres til produktion uden at skifte framework.