Dirección visual para TODO el frontend. Cualquier componente nuevo o modificado debe cumplir esto (basado en ui-ux-pro-max + web-design-guidelines).
SaaS profesional de confianza para PYMES ecuatorianas. Sencillo, moderno, denso en datos pero limpio. Referencia: Linear / Vercel dashboard. Nada de sombras pesadas, gradientes decorativos ni tarjetas dentro de tarjetas.
- Tablas > tarjetas para listados de datos (activos, aplicaciones,
contratos, mantenimientos). Números con
tabular-nums, alineados a la derecha. Fila clicable → modal/panel de detalle. - Espaciado: sistema de 4/8px (
space-y-6secciones,p-6contenedores,gap-2/3dentro de componentes). Un solomax-wconsistente. - Jerarquía tipográfica: título de página
text-2xl font-semibold tracking-tight; subtítulotext-sm text-muted-foreground; labelstext-sm font-medium. Nunca texto <12px. - Color: solo tokens semánticos de shadcn (primary, muted, destructive,
border…). Prohibido hex crudo en componentes. Estados con color + icono
(nunca solo color). Badges de estado: sutiles (
bg-*-50 text-*-700 ring-1 ring-insetestilo) no bloques saturados. - Interacción: todo clicable con
cursor-pointery estado hover visible; botones async con spinner + disabled; focus ring visible SIEMPRE; targets ≥40px; transiciones 150-200ms solo transform/opacity. - Formularios: label visible arriba (nunca placeholder-solo), error debajo
del campo, helper text persistente en campos complejos, validación on-blur,
wizard con indicador de pasos y navegación atrás. Modales de creación:
max-h-[90vh]con scroll interno, footer fijo con acciones. - Iconos: solo lucide-react, tamaño consistente (16px en botones/tabla, 20px en navegación), nunca emojis.
- Vacíos y carga: skeletons (no spinners de página completa); estados vacíos con icono + mensaje + CTA.
- Sidebar: colapsable a 64px (solo iconos + tooltip), expandido 256px, transición 200ms, estado en localStorage, item activo con indicador claro.
- Accesibilidad: aria-label en botones de solo icono, contraste AA,
orden de tab lógico,
aria-sorten tablas ordenables.
- El dato que le importa al dueño de la PYME es cuánto gasta en tecnología al mes: ese número debe ser prominente (informes, depreciación, totales).
- Reducir fricción: crear activo en pasos cortos con defaults inteligentes (categoría sugiere años de depreciación; código único autogenerado).
- Confianza: cifras contables con norma ecuatoriana explícita ("depreciación línea recta, 3 años — Art. 28 RLRTI").