UI Design System: shadcn/ui + Tailwind 4 + layout shell #2
Reference in New Issue
Block a user
Delete Branch "feature/UI-DESIGN-SYSTEM"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Resumen
Infraestructura transversal de frontend. Sistema de diseño moderno para que todas las UDTs futuras tengan componentes consistentes y estéticos.
Alcance
shadcn/ui init + 13 componentes base
Instalados en
src/web/src/components/ui/:button,input,label,card,form(react-hook-form + zod),alert,badge,avatar,separator,skeleton,sheet,dropdown-menu,navigation-menu.Fonts self-hosted
@fontsource/inter(UI) +@fontsource/jetbrains-mono(código) — evita depender de Google CDN en prod.Design tokens
CSS variables de shadcn (base color
neutral) +@theme inlinede Tailwind 4 para exponer como utilidades. Dark/light mode persistido en localStorage.Layout shell (
src/web/src/components/layout/)AppSidebar— NavigationMenu con módulos del sistema (Dashboard habilitado, Ventas/Tasación/Integraciones/Administración con badge "Próximamente"),Sheeten mobileAppHeader— hamburger mobile +ThemeToggle+AvatarconDropdownMenu(placeholder logout — funcional llega con UDT-002)ThemeToggle— Sun/Moon toggleuseThemehook persist en localStorageRefactor
ProtectedLayout— grid con Sidebar + HeaderPublicLayout— centrado conbg-muted/40HomePage— grid responsivo de Cards con iconoslucide-reactLoginPage+LoginForm—Card+ shadcnForm+ zod +AlertdestructiveTests
npm run buildexit 0, TS strict cleanConvención guardada
sig-cm2/conventions/ui-systemen engram — documenta shadcn elegido, componentes instalados, cómo agregar nuevos, ubicaciones, reglas (iconos lucide-react only, forms con zod+react-hook-form, no Material UI/Mantine/etc.).Out of scope
Test plan
cd src/web && npm run build→ exit 0cd src/web && npm test -- --run→ 11/11npx tsc --noEmit→ sin errores