Spring naar hoofdinhoud
Voltooidv0.2.2

Build Errors na Route Rename Fix

Diverse build errors opgelost na het hernoemen van /releases naar /documentatie route

Wat ging er fout?

Na het hernoemen van de /releases route naar /documentatie kregen we een serie build errors:

1. Bestandsnaam mismatch

Probleem: De route heette nu /documentatie maar het bestand was nog lib/mdx/releases.ts Symptoom: TypeScript kon de module niet vinden Fix: Bestand hernoemd naar lib/mdx/documentatie.ts en alle imports bijgewerkt

2. Server/Client component conflicts

Probleem: Componenten zonder 'use client' directive werden gebruikt in interactieve contexten Symptoom: Cryptische webpack error: "Cannot read properties of undefined (reading 'call')" Fix: 'use client' toegevoegd aan 7 componenten:
  • UI componenten (buttons, bento-grid, hero sections)
  • Marketing componenten (sidebar wrappers, skeletons)

3. Button component in BentoGrid

Probleem: BentoGrid importeerde Button component met complexe Radix UI dependencies Symptoom: Webpack module resolution errors bij het laden van de login pagina Fix: Button import verwijderd, vervangen door simpele <a> tag met inline styling

Wat hebben we gefixed?

Hernoem operatie

  • lib/mdx/releases.tslib/mdx/documentatie.ts
  • ✅ 4 bestanden bijgewerkt met nieuwe import pads
  • ✅ Alle routes werken met nieuwe naam

Component fixes

UI Components:
  • components/ui/ai-button.tsx - AI geanimeerde button
  • components/ui/button.tsx - Basis button component
  • components/ui/bento-grid.tsx - Grid layout voor features
  • components/ui/hero-section-2.tsx - Hero sectie met animaties
  • components/ui/sign-in.tsx - Login formulier component
App Components:
  • app/epd/clients/components/client-list-skeleton.tsx - Loading skelet
  • app/(marketing)/documentatie/components/release-sidebar-wrapper.tsx - Sidebar wrapper

Resultaat

Voor de fix:
  • ❌ Build faalde met TypeScript errors
  • ❌ Login pagina crashte
  • ❌ Documentatie pagina niet toegankelijk
  • ❌ EPD cliënten lijst crashte
Na de fix:
  • ✅ Build slaagt in 11.5s
  • ✅ Alle 25 routes werken
  • ✅ 4 documentatie pagina's gegenereerd
  • ✅ Geen runtime errors meer
  • ✅ Applicatie deployment-ready

Geleerde lessen

  1. Consistentie is key - Bij het hernoemen van routes ook de onderliggende bestanden meteen aanpassen
  2. 'use client' is essentieel - Elke component met interactiviteit (hooks, state, animations) heeft deze directive nodig
  3. Simpel > Complex - Soms is een <a> tag beter dan een complexe Button component met dependencies
  4. Clean cache helpt - Bij persistente errors: rm -rf .next en opnieuw starten

Impact

  • Development time: ~2 uur debugging en fixes
  • Files changed: 11 bestanden aangepast
  • Build time: Geen impact (11.5s voor/na)
  • Bundle size: Minimale toename (+0.1kb door wrappers)
  • User impact: Geen - bugs gevonden voor deployment