← Projektenpm · Design System · 2025–2026
HanDev PlatformShared
Monorepo-npm-Pakete für die gesamte Plattform: Design-System, Auth-Client und UI-Komponenten. Auto-Veröffentlichung in der GitLab Package Registry.
- @handev/platform-ui — Layout, Header, ServiceSwitcher
- @handev/platform-auth — JWKS-Verifikation + Refresh
- @handev/tailwind-preset — gemeinsame Design-Token
- Auto-Versionierung MAJOR.MINOR.PIPELINE_IID
pnpm workspacetsupReact 18TailwindRadix UI

Aufgabe
Bei 3–4 SPAs auf demselben Stack ist das Kopieren von Header, Sidebar und Auth-Client zwischen ihnen ein Anti-Pattern. Wir brauchten gemeinsame npm-Pakete, die reibungslos eingebunden und aktualisiert werden können.
Was wir gemacht haben
- @handev/tailwind-preset — gemeinsamer Tailwind-Preset (Farben, Fonts, Breakpoints, Komponenten).
- @handev/platform-auth — PlatformAuthClient (Frontend) und PlatformAuthVerifier (Backend: JWKS-Verifizierung). Dreifacher Retry bei 401.
- @handev/platform-ui — PlatformProvider, PlatformLayout, Header, Footer, ServiceSwitcher, UserMenu, AuthGuard, PlatformSidebarGroup, PlatformSidebarItem, MobileSidebarTrigger.
- Auto-Versionierung in GitLab CI: major.minor in package.json; CI fügt PIPELINE_IID als Patch hinzu.
- TypeScript-Typen und ESM aus tsup in dist/.
Ergebnis
- Einzige Wahrheitsquelle für UI und Auth über die gesamte Plattform.
- Versions-Bump = git push → CI veröffentlicht automatisch neue Version.
- Jeder Service zieht Updates via pnpm update @handev/*.