← Proyectosnpm · Design System · 2025–2026
HanDev PlatformShared
Monorepo de paquetes npm para toda la plataforma: sistema de diseño, cliente de auth y componentes UI. Publicación automática en GitLab Package Registry.
- @handev/platform-ui — Layout, Header, ServiceSwitcher
- @handev/platform-auth — verificación JWKS + refresh
- @handev/tailwind-preset — tokens de diseño compartidos
- Versionado automático MAJOR.MINOR.PIPELINE_IID
pnpm workspacetsupReact 18TailwindRadix UI
Desafío
Con 3–4 SPAs en el mismo stack, copiar el header, sidebar y cliente de auth entre ellas es un antipatrón. Necesitábamos paquetes npm compartidos que se pudieran adoptar y actualizar sin fricción.
Lo que hicimos
- @handev/tailwind-preset — preset Tailwind compartido (colores, fuentes, breakpoints, componentes).
- @handev/platform-auth — PlatformAuthClient (frontend) y PlatformAuthVerifier (backend: verificación JWKS). Triple retry en 401.
- @handev/platform-ui — PlatformProvider, PlatformLayout, Header, Footer, ServiceSwitcher, UserMenu, AuthGuard, PlatformSidebarGroup, PlatformSidebarItem, MobileSidebarTrigger.
- Versionado automático en GitLab CI: major.minor en package.json; CI agrega PIPELINE_IID como patch.
- TypeScript types y ESM de serie. tsup construye .js + .d.ts en dist/.
Resultado
- Única fuente de verdad para UI y auth en toda la plataforma.
- Bump de versión = git push → CI publica automáticamente.
- Cada servicio actualiza con pnpm update @handev/*.